我尝试在 Mac M1 计算机上运行 Celery 任务时遇到问题。我收到的错误消息如下:
The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec().
Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__() to debug.
[2023-11-20 15:51:19,174: ERROR/MainProcess] Process 'ForkPoolWorker-8' pid:5547 exited with 'signal 11 (SIGSEGV)'
我正在使用 Celery 进行 Django 应用程序任务处理,这个问题似乎与 M2 架构上的分叉有关。
我最初尝试通过导出
OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
来解决该问题,这似乎在短时间内有效。然而问题又出现了,这个解决方案不再有任何作用了。
值得注意的是,我目前正在我的机器上运行
MacOS Sonama 14.2 Beta
。
有趣的是,我之前在同一个测试版程序中遇到过并成功解决了这个问题。
任何有关如何解决此问题的见解或建议将不胜感激。
不确定它是否对您的情况有帮助,但我在 Mac 上使用 celery 时也遇到了与分叉过程相关的错误问题
对我有用的解决方案是使用 --pool=solo 选项启动工作进程