请教大神 reload 的案例

linkec

reload之后代码没有重载,看到子进程是重启了的,之前写的输出a,新的应该输出b,但是reload之后还是a。
麻烦大神给个案例

4419 1 2
1个回答

walkor 打赏

根据手册,只有onXXX回调中加载的文件才能reload,start.php中写死的代码不能reload。
换个说法,只有在Worker::runAll运行后动态加载的文件才能reload。
主进程加载的代码无法reload。

例如下面的代码可以reload
start.php

$worker ->onMessage = 'my_message';
$worker->onWorkerStart = function(){
        require_once '/path/of/your/deal_message.php';
};
Worker::runAll();

deal_message.php

<?php
function my_message($con, $data) {
    echo $data;
}
  • 暂无评论
年代过于久远,无法发表回答
×
🔝