为了账号安全,请及时绑定邮箱和手机立即绑定

swoole 里面的事件绑定怎么理解

swoole 里面的事件绑定怎么理解

PHP
烙印99 2019-03-12 09:00:25
swoole on函数事件绑定的理解 public function run_pre() { set_error_handler(array($this, 'error_handler')); $serv = new swoole_http_server($this->host, $this->port); $serv->set($this->setargv); $serv->on('Start', array($this, 'onStart')); $serv->on('ManagerStart', array($this, 'onManagerStart')); $serv->on('WorkerStart', array($this, 'onWorkerStart')); $serv->on('WorkerError', array($this, 'onWorkerError')); $serv->on('Request', array($this, 'onRequest')); return $serv; } function run() { $serv = $this->run_pre(); $serv->start(); } public function onStart($serv) { //代码执行 } 里面的$serv->on('Start', array($this, 'onStart'));怎么调用public function onStart($serv)
查看完整描述

5 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

只能打个比方的回答,具体的执行是需要看swoole源码才能说明的。

$server 是 SwooleServer 对象,就好比电话线路

用户可以在电话线路上,接入电话座机,就好比调用 $server->on()

接入的时候,需要告诉电话线路,你的座机号码是什么 也就是 $server->on('event')

当有电话进来的时候,你就可以接电话,处理电话内容了,也就是 $server->on('event', function(){处理中心})

$serv->on('Start', array($this, 'onStart'));

上述代码,表示的就是,当server接受到start事件时,调用 $this对象的 onStart 方法(function)

查看完整回答
反对 回复 2019-03-18
?
守着星空守着你

TA贡献1799条经验 获得超8个赞

$serv->on的第二个参数是个callable, callable可以是用户自定义函数,PHP内建函数,对象的方法,类的静态方法。

查看完整回答
反对 回复 2019-03-18
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

是否相当于是否这样的呢?

$serv->on('Start', function($ws,$fd){
    $this->onStart($ws,$fd);
});
function onStart($ws,$fd){
    //TODO
}
查看完整回答
反对 回复 2019-03-18
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

swoole是以事件驱动的框架

查看完整回答
反对 回复 2019-03-18
  • 5 回答
  • 0 关注
  • 457 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信