Как использовать ProcessPoolExecutor в django?
В проекте Django я хочу использовать ProcessPoolExecutor , но я могу это сделать. Есть ли решение? Я вызываю функцию в представлении, у которой есть исполнитель.
Я использую Джанго==4.1.7.
что нужно добавить к моей функции для запуска в django. Функция start() правильно работает вне django. но не работает в джанго.
из views.py в приложении django вызовите функцию, содержащую исполнителя:
def start():
#'... some code here'
with concurrent.futures.ProcessPoolExecutor(max_workers=num_procs) as executor:
1 ответ
Я рекомендую использовать Celery для вызова асинхронных задач из Django. Таким образом, у вас также будет возможность отслеживать процесс и возможные ошибки. Требуется немного, чтобы узнать логику, но оно того стоит.
https://docs.celeryq.dev/en/stable/index.html
https://docs.celeryq.dev/en/stable/django/first-steps-with-django.html