× 警告!旧版文档已经暂停维护,请查看新版文档。点击前往新版文档

Event

除了异步ServerClient库之外,Swoole扩展还提供了直接操作底层epoll/kqueue事件循环的接口。可将其他扩展创建的socketPHP代码中stream/socket扩展创建的socket等加入到SwooleEventLoop中。

Event 模块属于异步回调风格,不建议使用。推荐使用协程风格

事件优先级

  1. 通过Process::signal设置的信号处理回调函数
  2. 通过Event::defer设置的延迟执行函数
  3. 通过Timer::tickTimer::after设置的定时器回调函数
  4. 通过Event::cycle设置的周期回调函数

新版本

2.1.21.10.3版本中调整了23的顺序,优先执行定时器。

  1. 通过Process::signal设置的信号处理回调函数
  2. 通过Timer::tickTimer::after设置的定时器回调函数
  3. 通过Event::defer设置的延迟执行函数
  4. 通过Event::cycle设置的周期回调函数

  • 鬼眼

    多谢,帮大忙了。

  • BrotherWave

    EventLoop很强大,但是暂时没有想到合适使用的业务场景

  • wxc

    我的 Batistuta

  • 18201842514

    不建议使用的话用什么代替呢?Coroutine\Socket吗?