The EventListener class

(PECL event >= 1.5.0)


Represents a connection listener.


final EventListener {
/* Constants */
const integer OPT_LEAVE_SOCKETS_BLOCKING = 1 ;
const integer OPT_CLOSE_ON_FREE = 2 ;
const integer OPT_CLOSE_ON_EXEC = 4 ;
const integer OPT_REUSEABLE = 8 ;
const integer OPT_THREADSAFE = 16 ;
/* 属性 */
public readonly int $fd ;
/* 方法 */
public __construct ( EventBase $base , callable $cb , mixed $data , int $flags , int $backlog , mixed $target )
public disable ( void ) : bool
public enable ( void ) : bool
public getBase ( void ) : void
public static getSocketName ( string &$address [, mixed &$port ] ) : bool
public setCallback ( callable $cb [, mixed $arg = NULL ] ) : void
public setErrorCallback ( string $cb ) : void



Numeric file descriptor of the underlying socket. (Added in event-1.6.0 .)



By default Libevent turns underlying file descriptors, or sockets, to non-blocking mode. This flag tells Libevent to leave them in blocking mode.


If this option is set, the connection listener closes its underlying socket when the EventListener object is freed.


If this option is set, the connection listener sets the close-on-exec flag on the underlying listener socket. See platform documentation for fcntl and FD_CLOEXEC for more information.


By default on some platforms, once a listener socket is closed, no other socket can bind to the same port until a while has passed. Setting this option makes Libevent mark the socket as reusable, so that once it is closed, another socket can be opened to listen on the same port.


Allocate locks for the listener, so that it’s safe to use it from multiple threads.

Table of Contents