gpt4 book ai didi

python - multiprocessing.Pool.apply 的 future

转载 作者:太空宇宙 更新时间:2023-11-03 15:52:16 24 4
gpt4 key购买 nike

看着multiprocessing.Pool.apply_async我期待它返回一个Future。遗憾的是,它似乎是基于回调的。

现在,如果我想调用 multiprocessing.Pool.apply 但将其包装在 Future 中(以便异步处理),这是否可能?

最佳答案

multiprocessing.Pool 类是基于 Process 的 Workers 池的旧 Python 实现。它是在 concurrent.futures 模块之前设计的。

apply_async 方法返回一个 ApplyResult 对象,其行为与 Future 对象类似。

如果您想坚持使用 Future 对象,则需要使用 concurrent.futures.ProcessPoolExecutor顾名思义,它是基于流程的。因此,它不受 GIL 的影响。

如果您需要更高级的功能,例如对初始化函数或超时的支持,您可以查看 Pebble .

关于python - multiprocessing.Pool.apply 的 future ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41182724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com