我有一个漂亮的标准设置:django 兔子 芹菜。
我正在尝试使用芹菜中的标准Python多处理模块产生一个过程。
我注意到该过程本身不是产卵。不产生该过程的原因可能是什么。这是代码:
import multiprocessing as mp
from celery.schedules import crontab
from celery.decorators import periodic_task
@periodic_task(run_every=crontab(minute='*/1'), name='test_process_celery')
def main():
data = config_read()
try:
myqueue = mp.Queue(-1)
mylog_process = mp.Process(target=test_logger_process, args=(myqueue,))
mylog_process.start()
. . .
. . .
except Exception as e:
raise
finally:
mylog_process.join()
我们可以在芹菜中使用多处理模块吗?
多处理有任何芹菜限制吗?如果没有限制,为什么不产生过程?
预先感谢您。
尝试以下:
@periodic_task(run_every=crontab(minute='*/1'), name='test_process_celery')
def main():
from multiprocessing import current_process
current_process().daemon = False
your_stuff()
current_process().daemon = True