Я работаю с asyncio Python и пытаюсь понять функцию run_in_executor с помощью ThreadPoolExecutor по умолчанию для асинхронной обработки задач блокировки. Меня беспокоит доступ к общим переменным в этих задачах.
Я понимаю: когда я использую run_in_executor с ThreadPoolExecutor, задачи выполняются в отдельных потоках. Поэтому, чтобы обеспечить безопасность потоков и предотвратить условия гонки, я должен использовать примитивы синхронизации, такие как блокировки, при доступе к общим переменным, так же, как я бы это сделал с модулем потоков.
Правильно ли я понимаю или нет? asyncio в этом контексте обрабатывает общие переменные по-другому?
Подробнее здесь: https://stackoverflow.com/questions/781 ... les-when-u
Мобильная версия