如何从任务中添加更多线程(并删除线程)到当前多处理池(即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()和shrink(),尽管后者看起来有点可疑。
您需要在某处保留对池的引用,如果您只有一个池,请将其保持为全局。
警告海报:如果多处理实际上意味着运行多个单独的进程,那么当您尝试缩小或增长时,您可能已经处于子进程中,显然这是行不通的。
| 归档时间: |
|
| 查看次数: |
1691 次 |
| 最近记录: |