Сервер Celery не завершается немедленно при использовании prefork и без команды строки пула

Я работаю над проектом django с установленными celery и redis. Когда я запускаю сервер Celery как 'celery -A main_proj -l debug -P solo' или 'celery -A main_proj -l debug -P threads', я могу завершить их, просто нажав CTRL-C один или два раза для теплого/холодного отключения. Однако, когда я запускаю Celery как 'celery -A main_proj -l debug' и 'celery -A main_proj -l debug -P prefork', всякий раз, когда я пытаюсь завершить их, он просто застревает на Worker: Stopping Pool. Сколько бы я ни ждал, он остается таким, пока я не решу завершить его с помощью taskkill. Меня устраивают первые две альтернативы, но я хочу знать, почему последние варианты не завершаются быстро.

Вот код, который у меня есть для моего приложения celery:

from __future__ import absolute_import, unicode_literals
import os
from celery.schedules import crontab
from celery import Celery

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'main_proj.settings')

app = Celery('main_proj')

app.config_from_object('django.conf:settings', namespace='CELERY')

app.autodiscover_tasks()

Дополнительно, в файле settings.py я установил CELERY_BROKER_URL с URL redis, который я получаю из Railway, и у меня есть следующий код в файле init для папки main_proj:

from .celery import app as celery_app

__all__ = ('celery_app',)

Вот что всегда происходит, когда я пытаюсь завершить работу сервера Celery, прежде чем убить его с помощью taskkill на отдельном терминале.

Даже при многократном нажатии CTRL+C он все равно не завершался

Интересно, что когда я запускаю сервер celery с помощью 'celery -A main_proj -l debug' или 'celery -A main_proj -l debug -P prefork', на консоли моего редактора (а это Visual Studio Code, который я использую) появляется куча функций, если я не ошибаюсь, и этого не происходит, когда я использую solo или threads для команды строки пула. Я не уверен, что это может быть причиной того, что завершение работы занимает так много времени.

Вот список функций, который появляется, когда я запускаю сервер celery

Любое полезное объяснение этого было бы очень признательно.

Вернуться на верх