Nathaniel Smith added the comment: Here's the patch I mentioned: https://github.com/njsmith/cpython/commit/62547dc5ea323a07c25c2047636a02241f518013
It has a crude but effective technique for handling the hanging issue :-). Alternatively one could use the World's Stupidest Coroutine Runner: def run(coro): try: coro.send(None) except StopIteration: pass else: raise RuntimeError("yielded") > I'm also wondering how far we might be able to get by adjusting the pending > signal processing such that we always execute at least one line from a > function before checking for pending signals Huh, that's a neat idea. I think it's defeated by 'while True: pass', though :-(. (You have to write it on two lines, but it compiles down to a single instruction that jumps to itself.) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue29988> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com