… | |
… | |
236 | # the next line forces initialisation of internal |
236 | # the next line forces initialisation of internal |
237 | # signal handling variables, otherwise, PL_sig_pending |
237 | # signal handling variables, otherwise, PL_sig_pending |
238 | # etc. will be null pointers. |
238 | # etc. will be null pointers. |
239 | $SIG{KILL} = sub { }; |
239 | $SIG{KILL} = sub { }; |
240 | |
240 | |
241 | our $VERSION = '1.01'; |
241 | our $VERSION = '1.04'; |
242 | |
242 | |
243 | require XSLoader; |
243 | require XSLoader; |
244 | XSLoader::load ("Async::Interrupt", $VERSION); |
244 | XSLoader::load ("Async::Interrupt", $VERSION); |
245 | } |
245 | } |
246 | |
246 | |
… | |
… | |
536 | |
536 | |
537 | =back |
537 | =back |
538 | |
538 | |
539 | =head1 THE Async::Interrupt::EventPipe CLASS |
539 | =head1 THE Async::Interrupt::EventPipe CLASS |
540 | |
540 | |
541 | Pipes are the predominent utility to make asynchronous signals |
541 | Pipes are the predominant utility to make asynchronous signals |
542 | synchronous. However, pipes are hard to come by: they don't exist on the |
542 | synchronous. However, pipes are hard to come by: they don't exist on the |
543 | broken windows platform, and on GNU/Linux systems, you might want to use |
543 | broken windows platform, and on GNU/Linux systems, you might want to use |
544 | an C<eventfd> instead. |
544 | an C<eventfd> instead. |
545 | |
545 | |
546 | This class creates selectable event pipes in a portable fashion: on |
546 | This class creates selectable event pipes in a portable fashion: on |