Aiogram остановка бота на момент парсинга. Multiprocessing. Async

Мне нужно с высокой скорость парсить сайт. Для этого я использовал multiprocessing и aiohttp. При запуске парсинга, бот стопорится. Полагаю, проблема где-то в этом участке кода, помогите разобраться. p.map блокирует основной поток, есть ли способ этого избежать?

async def get_json(CURL):
    # парсинг через aiohttp

def middleware(curl):
    asyncio.run(get_json(curl)) # запуск самого асинхронного парсинга
  

# запускаемая функция
async def start_pars():
    CURL = [1, 2, 3, 4, ...]
    with multiprocessing.Pool(multiprocessing.cpu_count()) as p:
        p.map(middleware, CURL) # запуск 4-х потоков

Ещё постоянно выскакивает, как я прочёл, некритичная ошибка:

raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed

Ответы (1 шт):

Автор решения: VlasssaDassa

p.map блокирует поток, в котором он был запущен. Поэтому я решил проблему путём создания потока, в котором запустил p.map

thread = Thread(target=(asyncio.run), args=(start_pars(), ))
thread.start()
→ Ссылка