import asyncio
from contextlib import closing
async def get_some_data():
    # Обработка I/O - например, получение данных через HTTP
    await asyncio.sleep(2)
    data = 'ping'
    print(data)
    return data 
async def process(data):
    # Обработка данных на CPU
    await asyncio.sleep(1)    
    print('pong')
async def main():
    while True:
        data = await get_some_data()  # Блокирующий вызов - ожидание поступления новой порции данных
        asyncio.ensure_future(process(data))  # Неблокирующий вызов - обработка данных на CPU
    
if __name__ == "__main__":
    with closing(asyncio.get_event_loop()) as event_loop:
        event_loop.run_until_complete(main())