ThreadPool + asyncio проблема
from concurrent.futures import ThreadPoolExecutor
import threading
import asyncio
thread = ThreadPoolExecutor(max_workers=4)
# Функция для печати числа
async def print_number(number):
print(f"My function is running in thread {threading.get_ident()}")
print(number)
async def add_thread(task, number):
future = thread.submit(task, number)
return await asyncio.wrap_future(future)
async def main():
print(f"main function is running in thread {threading.get_ident()}")
for i in range(10):
results = await add_thread(print_number, i)
asyncio.create_task(results)
asyncio.run(main())
почему функция print_number выполняется в одном основном потоке? мне нужно что бы она выполнялась в отдельных потоках
Источник: Stack Overflow на русском