gpt4 book ai didi

python - 动态添加/删除线程到 celery 中的工作池

转载 作者:太空狗 更新时间:2023-10-29 21:59:00 25 4
gpt4 key购买 nike

如何从任务中向当前多处理池添加更多线程(并删除线程)(即 celeryd 运行时 CELERYD_CONCURRENCY = 10,但我想即时将其更改为 CELERYD_CONCURRENCY = 15)?

有一个函数叫做 celery.concurrency.processes.TaskPool.Pool.grow但我不知道如何从正在运行的任务中调用它,也不知道它是否是执行该操作的正确函数。

最佳答案

阅读来源:

https://github.com/ask/celery/blob/master/celery/concurrency/processes/__init__.py

grow()shr​​ink() 都有,虽然后者看起来有点可疑。

您需要在某处保留对池的引用,如果您只有一个池,请将其保持在全局范围内。

告诫海报:如果多处理实际上意味着运行多个单独的进程,当您尝试收缩或增长时,您可能已经处于子进程中,显然这不会不工作。

关于python - 动态添加/删除线程到 celery 中的工作池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6956272/

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