@asyncio.coroutine
def listener():
while True:
message = yield from websocket.recieve_message()
if message:
yield from handle(message)
loop = asyncio.get_event_loop()
loop.run_until_complete(listener())
Допустим, я использую веб-сокеты с asyncio. Это означает, что я получаю сообщения от websockets
. И когда я получаю сообщение, я хочу обработать его, но теряю всю асинхронность с моим кодом. Потому что yield from handle(message)
определенно блокирует ... Как мне найти способ сделать его неблокирующим? Например, обрабатывать несколько сообщений одновременно. Мне не нужно ждать обработки сообщения, прежде чем я смогу обработать другое сообщение.
Спасибо.
handle
также может быть отдельной задачей. Ваш код неполный, поэтому получить именно то, что вам нужно, непросто. - person Andrew Svetlov   schedule 02.12.2015