… | |
… | |
160 | |
160 | |
161 | my $w = AnyEvent->signal (signal => "INT", cb => sub { exit 1 }); |
161 | my $w = AnyEvent->signal (signal => "INT", cb => sub { exit 1 }); |
162 | |
162 | |
163 | CHILD PROCESS WATCHERS |
163 | CHILD PROCESS WATCHERS |
164 | You can also listen for the status of a child process specified by the |
164 | You can also listen for the status of a child process specified by the |
165 | "pid" argument. The watcher will only trigger once. This works by |
165 | "pid" argument (or any child if the pid argument is 0). The watcher will |
|
|
166 | trigger as often as status change for the child are received. This works |
166 | installing a signal handler for "SIGCHLD". |
167 | by installing a signal handler for "SIGCHLD". The callback will be |
|
|
168 | called with the pid and exit status (as returned by waitpid). |
167 | |
169 | |
168 | Example: wait for pid 1333 |
170 | Example: wait for pid 1333 |
169 | |
171 | |
170 | my $w = AnyEvent->child (pid => 1333, cb => sub { warn "exit status $?" }); |
172 | my $w = AnyEvent->child (pid => 1333, cb => sub { warn "exit status $?" }); |
171 | |
173 | |
… | |
… | |
177 | the "AnyEvent::Impl:xxx" modules, but can be any other class in the |
179 | the "AnyEvent::Impl:xxx" modules, but can be any other class in the |
178 | case AnyEvent has been extended at runtime (e.g. in *rxvt-unicode*). |
180 | case AnyEvent has been extended at runtime (e.g. in *rxvt-unicode*). |
179 | |
181 | |
180 | The known classes so far are: |
182 | The known classes so far are: |
181 | |
183 | |
|
|
184 | EV::AnyEvent based on EV (an interface to libev, best choice) |
182 | AnyEvent::Impl::Coro based on Coro::Event, best choise. |
185 | AnyEvent::Impl::Coro based on Coro::Event, second best choice. |
183 | AnyEvent::Impl::Event based on Event, also best choice :) |
186 | AnyEvent::Impl::Event based on Event, also second best choice :) |
184 | AnyEvent::Impl::Glib based on Glib, second-best choice. |
187 | AnyEvent::Impl::Glib based on Glib, second-best choice. |
185 | AnyEvent::Impl::Tk based on Tk, very bad choice. |
188 | AnyEvent::Impl::Tk based on Tk, very bad choice. |
186 | AnyEvent::Impl::Perl pure-perl implementation, inefficient. |
189 | AnyEvent::Impl::Perl pure-perl implementation, inefficient. |
187 | |
190 | |
188 | AnyEvent::detect |
191 | AnyEvent::detect |