Ini adalah masalah yang diketahui dengan seledri. Itu berasal dari masalah yang diperkenalkan dalam ketergantungan biliar. Solusinya adalah secara manual mengatur _config
atribut untuk proses saat ini. Terima kasih kepada pengguna @martinth untuk solusi di bawah ini.
from celery.signals import worker_process_init
from multiprocessing import current_process
@worker_process_init.connect
def fix_multiprocessing(**kwargs):
try:
current_process()._config
except AttributeError:
current_process()._config = {'semprefix': '/mp'}
worker_process_init
hook akan mengeksekusi kode pada inisialisasi proses pekerja. Kami hanya memeriksa untuk melihat apakah _config
ada, dan atur jika tidak ada.