EvWatcher (class)
The EvWatcher class
Introduction
(PECL ev >= 0.2.0)
EvWatcher
is a base class for all watchers( EvCheck , EvChild etc.). Since EvWatcher
's constructor is abstract , one can't(and don't need to) create EvWatcher
objects directly.
Class synopsis
abstract EvWatcher
{
/* Properties */
public $is_active ;
public $data ;
public $is_pending ;
public $priority ;
/* Methods */
public int clear ( void )
abstract public __construct ( void )
public void feed ( int $revents )
public EvLoop getLoop ( void )
public void invoke ( int $revents )
public bool keepalive ([ bool $value ] )
public void setCallback ( callable $callback )
public void start ( void )
public void stop ( void )
}
Properties
is_active
Readonly
. TRUE
if the watcher is active. FALSE
otherwise.
data
User custom data associated with the watcher
is_pending
Readonly
.TRUE
if the watcher is pending, i.e. it has outstanding events, but its callback has not
yet been invoked. FALSE
otherwise. As long, as a watcher is pending(but not
active), one must not
change its priority.
priority
Integer between Ev::MINPRI
and Ev::MAXPRI
. Pending watchers with higher priority will be invoked before watchers with lower priority, but priority will not keep watchers from being executed(except for EvIdle watchers). EvIdle watchers provide functionality to suppress invocation when higher priority events are pending.
Table of Contents
- EvWatcher::clear — Clear watcher pending status
- EvWatcher::__construct — Abstract constructor of a watcher object
- EvWatcher::feed — Feeds the given revents set into the event loop
- EvWatcher::getLoop — Returns the loop responsible for the watcher
- EvWatcher::invoke — Invokes the watcher callback with the given received events bit mask
- EvWatcher::keepalive — Configures whether to keep the loop from returning
- EvWatcher::setCallback — Sets new callback for the watcher
- EvWatcher::start — Starts the watcher
- EvWatcher::stop — Stops the watcher
← EvTimer::set
EvWatcher::clear →
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.