Как использовать 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

Другие вопросы по тегам