Issue 24080: asyncio.Event.wait() Task was destroyed but it is pending (original) (raw)
asyncio.Event.wait() doesn't seem to be cancelled by asyncio.wait_for(). Ctrl-c in the attached example produces output below. I'm not certain the code is correct though the documentation for wait_for() suggests it should work. Without the wait_for() it doesn't suffer from pending task destruction. This is Python 3.4.3.
Hello World! Hello World! ^CTraceback (most recent call last): File "./loop2.py", line 27, in loop.run_until_complete(hello_world()) File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/asyncio/base_events.py", line 304, in run_until_complete self.run_forever() File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/asyncio/base_events.py", line 276, in run_forever self._run_once() File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/asyncio/base_events.py", line 1136, in _run_once event_list = self._selector.select(timeout) File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/selectors.py", line 502, in select kev_list = self._kqueue.control(None, max_ev, timeout) KeyboardInterrupt Task was destroyed but it is pending! task: <Task pending coro=<wait() running at /Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/asyncio/locks.py:242> wait_for= cb=[_release_waiter(<Future pendi...sk._wakeup()]>)() at /Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/asyncio/tasks.py:335]> [1] 8134 exit 1 ../venv3/bin/python3 ./loop2.py