ThinkSSL🔒 一键申购 5分钟快速签发 30天无理由退款 购买更放心 广告
# mt\_rand随机数 在`Swoole`中如果在父进程内调用了`mt_rand`,不同的子进程内再调用`mt_rand`返回的结果会是相同的。所以必须在每个子进程内调用`mt_srand`重新播种。 > `shuffle`和`array_rand`等依赖随机数的`PHP`函数同样会受到影响 ~~~ mt_rand(0, 1); //开始 $worker_num = 16; // fork 进程 for($i = 0; $i < $worker_num; $i++) { $process = new swoole_process('child_async', false, 2); $pid = $process -> start(); } //异步执行进程 function child_async(swoole_process $worker) { mt_srand(); echo mt_rand(0, 100).PHP_EOL; $worker->exit(); } ~~~