Just started experimenting with asynch which looks really cool. I'm trying to use futures with an asynch coroutine that runs forever but I get this error:
Task exception was never retrieved future: <Task finished coro=<slow_operation() done, defined at ./asynchio-test3.py:5> exception=InvalidStateError("FINISHED: <Future finished result='This is the future!'>",)> This is my code which runs as expected if I remove the 3 lines related to futures:
import asyncio @asyncio.coroutine def slow_operation(): yield from asyncio.sleep(1) print ("This is the task!") future.set_result('This is the future!') asyncio.async(slow_operation()) def got_result(future): print(future.result()) loop = asyncio.get_event_loop() future = asyncio.Future() future.add_done_callback(got_result) asyncio.async(slow_operation()) try: loop.run_forever() finally: loop.close()