This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients aba, gregory.p.smith, gvanrossum, neologix, vstinner
Date 2013-12-03.16:07:17
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <CAMpsgwZ_Hm-=z0C+fsLNANfwtey+v_hG9EJNtpkC5pMRYxk2YQ@mail.gmail.com>
In-reply-to <1386085178.16.0.897437622809.issue19850@psf.upfronthosting.co.za>
Content
2013/12/3 Guido van Rossum <report@bugs.python.org>:
> Please answer this question. Under what circumstances can a signal handler interrupt a blocking system call in a thread that is not the main thread?

There is no guarantee that the signal handler is called in the main
thread. On FreeBSD, if I remember correctly, it is called in a random
thread.

You can control which thread gets the signal using
signal.pthread_sigmask() (block signals in other threads) and
signal.pthread_kill() (send a signal a specific thread).
History
Date User Action Args
2013-12-03 16:07:17vstinnersetrecipients: + vstinner, gvanrossum, gregory.p.smith, neologix, aba
2013-12-03 16:07:17vstinnerlinkissue19850 messages
2013-12-03 16:07:17vstinnercreate