New submission from Dan Timofte <dantimo...@protonmail.com>:

after starting run_forever if all scheduled tasks are consumed run_once will 
issue a KqueueSelector.select(None) which will block indefinitely :
https://www.freebsd.org/cgi/man.cgi?query=select&sektion=2&apropos=0&manpath=FreeBSD+12.0-RELEASE+and+Ports#DESCRIPTION

after this new tasks are not being processed, trying to stop event loop with 
stop() is not working.

this blocks immediatly : 
import asyncio
import sys
import signal


def cb_signal_handler(signum, frame):
    asyncio.get_event_loop().stop()


def main():
    signal.signal(signal.SIGINT, cb_signal_handler)

    # asyncio.get_event_loop().create_task(asyncio.sleep(1))
    asyncio.get_event_loop().run_forever()

main()

With asyncio.sleep uncomment it will block after 4 cycles.

----------
components: asyncio, macOS
messages: 340182
nosy: asvetlov, dantimofte, ned.deily, ronaldoussoren, yselivanov
priority: normal
severity: normal
status: open
title: asyncio run_forever blocks indefinitely
versions: Python 3.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue36626>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to