он deprecated, поэтому не хочу его юзать. модуль asyncio.subprocess позволяет запускать только программу из командной строки.
когда я просто пытаюсь создать процесс через Process(target=xxx).start() - вылетает ошибка: TypeError: cannot pickle 'TaskStepMethWrapper' object
подскажите как поступить?
нагуглил вот это, но уверен что есть метод попроще и не такой низкоуровневый
Думаю тебе нужен https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.loop.run_in_executor
да, это понятно, но когда запускаешь его с ProcessPoolExecutor, он ругается что он deprecated. Deprecated since version 3.8: Using an executor that is not an instance of ThreadPoolExecutor is deprecated and will trigger an error in Python 3.9. а с тредпулом делать нет смысла, потому что задача cpu-bound
Очевидно сериализуй по другому
для меня не так очевидно) можешь пример кода написать? думал пикл там обязательная подкапотная часть Process
весьма остроумно, спасибо
Обычный ценник
Тебе пишет не то что экзекутор задеприкейтили, а его использование. Я аж с перепугу в исходники полез смотреть где там что https://github.com/python/cpython/blob/main/Lib/concurrent/futures/process.py
да, мб неверно выразился, о суть в том что использовать его не хочется, а то потом могут возникнуть проблемы
Обсуждают сегодня