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)
繁花不似锦
TA贡献1851条经验 获得超4个赞
是否相当于是否这样的呢?
$serv->on('Start', function($ws,$fd){
$this->onStart($ws,$fd);
});
function onStart($ws,$fd){
//TODO
}
- 5 回答
- 0 关注
- 457 浏览
添加回答
举报
0/150
提交
取消