Hmm, interesting thought! I'll try that out. Thanks!
On Fri, Jun 26, 2020, 01:51 Antoine Pitrou <solip...@pitrou.net> wrote: > On Thu, 25 Jun 2020 18:32:48 -0700 > Yonatan Zunger via Python-ideas > <python-ideas@python.org> wrote: > > > > So that's an example of why you might find yourself in such a situation > in > > userland. And overall, Python's signal handling mechanism is pretty good; > > it's *way* nicer than having to deal with it in C, since signal handlers > > run in the main thread as more-or-less ordinary Python code, and you > don't > > have to deal with the equivalent of signal-safety and the like. The > > downside of that flexibility, though, is that some tasks like deferring > > signals end up being *really hard* in the Python layer, because even > > appending the signum to an array isn't atomic enough to guarantee that it > > won't be interrupted by another signal. > > If you want to serialize execution of signal handlers, it seems like > the best course of action would be to use signal.set_wakeup_fd() and > process incoming signals in an event loop. > > Other than that, SimpleQueue may help as well, since it's specifically > meant to be reentrant: > https://docs.python.org/3/library/queue.html#simplequeue-objects > > Regards > > Antoine. > > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/WOZ4TJHZ3AOSYIWWWKS4QUC6TYJIQP2J/ > Code of Conduct: http://python.org/psf/codeofconduct/ >
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/RLFVMHQGJJVLNRMESG3SNH4474K4GYQS/ Code of Conduct: http://python.org/psf/codeofconduct/