[issue12060] Python doesn't support real time signals

STINNER Victor report at bugs.python.org
Thu May 12 14:47:43 CEST 2011


STINNER Victor <victor.stinner at haypocalc.com> added the comment:

> Yeah it will not work without atomic ops.

... Or we can maybe block the signals (all signals or just one signal?) using pthread_sigmask(SIG_BLOCK) while we access the Handlers array. But pthread_sigmask() is not available on all OSes.

On my Linux box, Python 3.3 says that signal.NSIG is equal to 65 which looks correct.

> does anyone actually know why the last time i looked after this
> (on Linux, then) realtime signals had a default action EQ SIGABRT?

The manpage says "The default action for an unhandled real-time signal is to terminate the receiving process." It is an arbitrary choice. Why do you care about the default action?

> The NSIG detection of Modules/signalmodule.c uses 64 as a fallback.
> 32 seems to be more reasonable.
> And you test against it instead of RTMAX in the patch.

I don't understand: I don't use RTMAX in my patch.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue12060>
_______________________________________


More information about the Python-bugs-list mailing list