import multiprocessing import queue def worker(num, q): """子进程要执行的任务""" result = num * 2 q.put(result) # 将结果放入队列中 if __name__ == '__main__': # 创建队列和进程池 q = multiprocessing.Queue() pool = multiprocessing.Pool() # 提交任务到进程池中
时间: 2024-04-03 17:36:49 浏览: 93
如果您在这里提交任务到进程池中,您需要调用 `pool.apply_async(worker, args=(num, q))` 方法,其中 `num` 是传入进程的参数,`q` 是进程完成任务后将结果放入的队列。使用 `apply_async()` 方法可以异步提交任务,这样可以最大程度地利用 CPU 资源提高效率。如果需要同步提交任务,可以使用 `pool.apply()` 方法。同时,还需要调用 `pool.close()` 方法关闭进程池,然后调用 `pool.join()` 方法等待所有进程完成任务。
阅读全文