Асинхронно отправлять события в Концентратор событий из приложения функции запуска больших двоичных объектов Python Azure

#python-3.x #azure #azure-functions

Вопрос:

Я пытаюсь отправлять события в концентратор событий из функции триггера большого двоичного объекта Python. Из статьи, https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-python-get-started-send

Run () — это асинхронная функция, и ниже приведена строка для вызова Run() для отправки событий в концентратор событий.

 loop.run_until_complete(run())
 

Но в случае функции, запускающей большой двоичный объект, имя большого двоичного объекта должно быть передано в качестве входного параметра функции Run ().
Пожалуйста, дайте мне знать, как изменить приведенную выше строку ( loop.run_until_complete(run()) ) для передачи blobName в качестве параметра.

Ниже приведено имя функции для функции, запускающей большие двоичные объекты.

 def Run(myblob: func.InputStream)
 

В данный момент я вызываю вспомогательную функцию (SendBlobs()) из Run, как показано ниже, но я хочу, чтобы Run() выполнялся асинхронно для многопоточности.

 def Run(myblob: func.InputStream):
    loop = asyncio.new_event_loop()
    asyncio.set_event_loop(loop)
    result = loop.run_until_complete(SendBlobs())  

async def SendBlobs():
     await producer.send_batch(event_data_batch)
 

Я новичок в Python. Ценю вашу помощь.