… | |
… | |
2124 | and might or might not set or restore the installed signal handler. |
2124 | and might or might not set or restore the installed signal handler. |
2125 | |
2125 | |
2126 | While this does not matter for the signal disposition (libev never |
2126 | While this does not matter for the signal disposition (libev never |
2127 | sets signals to C<SIG_IGN>, so handlers will be reset to C<SIG_DFL> on |
2127 | sets signals to C<SIG_IGN>, so handlers will be reset to C<SIG_DFL> on |
2128 | C<execve>), this matters for the signal mask: many programs do not expect |
2128 | C<execve>), this matters for the signal mask: many programs do not expect |
2129 | many signals to be blocked. |
2129 | certain signals to be blocked. |
2130 | |
2130 | |
2131 | This means that before calling C<exec> (from the child) you should reset |
2131 | This means that before calling C<exec> (from the child) you should reset |
2132 | the signal mask to whatever "default" you expect (all clear is a good |
2132 | the signal mask to whatever "default" you expect (all clear is a good |
2133 | choice usually). |
2133 | choice usually). |
|
|
2134 | |
|
|
2135 | In current versions of libev, you can ensure that the signal mask is not |
|
|
2136 | blocking any signals (except temporarily, so thread users watch out) by |
|
|
2137 | specifying the C<EVFLAG_NOSIGNALFD> when creating the event loop. This is |
|
|
2138 | not guaranteed for future versions, however. |
2134 | |
2139 | |
2135 | =head3 Watcher-Specific Functions and Data Members |
2140 | =head3 Watcher-Specific Functions and Data Members |
2136 | |
2141 | |
2137 | =over 4 |
2142 | =over 4 |
2138 | |
2143 | |