首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Event (class)

介绍

(PECL event >= 1.2.6-beta)

事件类表示正在准备读取或写入的文件描述符上的事件触发; 准备从文件描述符读取或写入(仅限边沿触发 I / O); 超时过期; 发生信号; 用户触发的事件。

每个事件都与 EventBase 相关联。但是,事件将永远不会触发,直到它被添加(通过事件:: Add()方法)。在注册事件发生之前,添加的事件仍处于挂起状态,从而将其转为活动状态。要处理事件,用户可以注册一个在事件激活时调用的回调。如果事件被配置为持久性,它将保持挂起。如果它不是持久的,它在回调运行时会停止等待。Event :: del()方法删除事件,从而使其处于非挂起状态。通过 Event :: add()方法,可以再次添加它。

课程简介

final Event {

/* Constants */

const integer ET = 32 ;

const integer PERSIST = 16 ;

const integer READ = 2 ;

const integer WRITE = 4 ;

const integer SIGNAL = 8 ;

const integer TIMEOUT = 1 ;

/* Properties */

public readonly bool $ pending;

/* Methods */

代码语言:javascript
复制
public bool add ([  double $timeout  ] )
代码语言:javascript
复制
public bool addSignal ([  double $timeout  ] )
代码语言:javascript
复制
public bool addTimer ([  double $timeout  ] )
代码语言:javascript
复制
public __construct (  EventBase $base  ,  mixed $fd  ,  int $what  ,  callable $cb  [,  mixed $arg  = NULL  ] )
代码语言:javascript
复制
public bool del ( void )
代码语言:javascript
复制
public bool delSignal ( void )
代码语言:javascript
复制
public bool delTimer ( void )
代码语言:javascript
复制
public void free ( void )
代码语言:javascript
复制
public static array getSupportedMethods ( void )
代码语言:javascript
复制
public bool pending (  int $flags  )
代码语言:javascript
复制
public bool set (  EventBase $base  ,  mixed $fd  [,  int $what  [,  callable $cb  [,  mixed $arg  ]]] )
代码语言:javascript
复制
public bool setPriority (  int $priority  )
代码语言:javascript
复制
public bool setTimer (  EventBase $base  ,  callable $cb  [,  mixed $arg  ] )
代码语言:javascript
复制
public static Event signal (  EventBase $base  ,  int $signum  ,  callable $cb  [,  mixed $arg  ] )
代码语言:javascript
复制
public static Event timer (  EventBase $base  ,  callable $cb  [,  mixed $arg  ] )

}

属性

等待

是否事件正在等待。请参阅关于事件持久性

预定义的常量

Event::ET

表示如果底层事件库后端支持边缘触发事件,则该事件应该是边缘触发的。这会影响的语义Event::READEvent::WRITE

Event::PERSIST

指示事件是持久的。请参阅关于事件持久性

Event::READ

该标志表示当提供的文件描述符(通常为流资源或套接字)准备好读取时变为活动状态的事件。

Event::WRITE

该标志表示当提供的文件描述符(通常为流资源或套接字)准备好读取时变为活动状态的事件。

Event::SIGNAL

用于执行信号检测。请参阅下面的“构建信号事件”。

Event::TIMEOUT

该标志表示在超时过后活动的事件。

Event::TIMEOUT在构建事件时该标志被忽略:可以在添加事件时设置超时时间,也可以不设置。它在发生超时时在回调函数的$ what 参数中设置。

目录

  • Event :: add - 使事件悬而未决
  • Event :: addSignal - 使信号事件悬而未决
  • Event :: addTimer - 使计时器事件悬而未决
  • Event :: __ construct - 构造 Event 对象
  • Event :: del - 使事件处于非挂起状态
  • Event :: delSignal - 使信号事件处于非挂起状态
  • Event :: delTimer - 使计时器事件不处于待处理状态
  • Event :: free - 为该事件分配事件非待处理和免费资源。
  • Event :: getSupportedMethods - 返回此版本的 Libevent 中支持的方法名称的数组
  • Event :: pending - 检测事件是否挂起或计划
  • Event :: set - 重新配置事件
  • Event :: setPriority - 设置事件优先级
  • Event :: setTimer - 重新配置定时器事件
  • Event :: signal - 构造信号事件对象
  • Event :: timer - 构造计时器事件对象

Event::add →

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com