import asyncio


async def cb(*args, **kwargs):
    print('CB CALLED')
    await asyncio.sleep(1)
    print('CB END')


async def f():
    print('F CALLED')
    await asyncio.sleep(2)
    print('F END')


async def test():
    fut = asyncio.ensure_future(f())
    fut.add_done_callback(lambda *args: asyncio.create_task(cb()))
    await fut
    await asyncio.sleep(2)


asyncio.run(test())