|
|
|
@ -3393,16 +3393,22 @@ do this when the watcher is inactive (and not pending either).
|
|
|
|
|
|
|
|
|
|
=item w->set ([arguments])
|
|
|
|
|
|
|
|
|
|
Basically the same as C<ev_TYPE_set>, with the same arguments. Must be
|
|
|
|
|
called at least once. Unlike the C counterpart, an active watcher gets
|
|
|
|
|
automatically stopped and restarted when reconfiguring it with this
|
|
|
|
|
method.
|
|
|
|
|
Basically the same as C<ev_TYPE_set>, with the same arguments. Either this
|
|
|
|
|
method or a suitable start method must be called at least once. Unlike the
|
|
|
|
|
C counterpart, an active watcher gets automatically stopped and restarted
|
|
|
|
|
when reconfiguring it with this method.
|
|
|
|
|
|
|
|
|
|
=item w->start ()
|
|
|
|
|
|
|
|
|
|
Starts the watcher. Note that there is no C<loop> argument, as the
|
|
|
|
|
constructor already stores the event loop.
|
|
|
|
|
|
|
|
|
|
=item w->start ([arguments])
|
|
|
|
|
|
|
|
|
|
Instead of calling C<set> and C<start> methods separately, it is often
|
|
|
|
|
convenient to wrap them in one call. Uses the same type of arguments as
|
|
|
|
|
the configure C<set> method of the watcher.
|
|
|
|
|
|
|
|
|
|
=item w->stop ()
|
|
|
|
|
|
|
|
|
|
Stops the watcher if it is active. Again, no C<loop> argument.
|
|
|
|
@ -3424,20 +3430,25 @@ Invokes C<ev_stat_stat>.
|
|
|
|
|
|
|
|
|
|
=back
|
|
|
|
|
|
|
|
|
|
Example: Define a class with an IO and idle watcher, start one of them in
|
|
|
|
|
the constructor.
|
|
|
|
|
Example: Define a class with two I/O and idle watchers, start the I/O
|
|
|
|
|
watchers in the constructor.
|
|
|
|
|
|
|
|
|
|
class myclass
|
|
|
|
|
{
|
|
|
|
|
ev::io io ; void io_cb (ev::io &w, int revents);
|
|
|
|
|
ev::io2 io2 ; void io2_cb (ev::io &w, int revents);
|
|
|
|
|
ev::idle idle; void idle_cb (ev::idle &w, int revents);
|
|
|
|
|
|
|
|
|
|
myclass (int fd)
|
|
|
|
|
{
|
|
|
|
|
io .set <myclass, &myclass::io_cb > (this);
|
|
|
|
|
io2 .set <myclass, &myclass::io2_cb > (this);
|
|
|
|
|
idle.set <myclass, &myclass::idle_cb> (this);
|
|
|
|
|
|
|
|
|
|
io.start (fd, ev::READ);
|
|
|
|
|
io.set (fd, ev::WRITE); // configure the watcher
|
|
|
|
|
io.start (); // start it whenever convenient
|
|
|
|
|
|
|
|
|
|
io2.start (fd, ev::READ); // set + start in one call
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|