Message133910
One solution to fix this problem is to use pthread_sigmask() on the _read() thread to not handle SIGARLM. For example, the faulthandler uses the following code to not handle any thread in its timeout thread:
#ifdef HAVE_PTHREAD_H
sigset_t set;
/* we don't want to receive any signal */
sigfillset(&set);
#if defined(HAVE_PTHREAD_SIGMASK) && !defined(HAVE_BROKEN_PTHREAD_SIGMASK)
pthread_sigmask(SIG_SETMASK, &set, NULL);
#else
sigprocmask(SIG_SETMASK, &set, NULL);
#endif
#endif |
|
| Date |
User |
Action |
Args |
| 2011-04-16 23:23:54 | vstinner | set | recipients:
+ vstinner, pitrou |
| 2011-04-16 23:23:54 | vstinner | set | messageid: <[email protected]> |
| 2011-04-16 23:23:54 | vstinner | link | issue11859 messages |
| 2011-04-16 23:23:54 | vstinner | create | |
|