国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

父進程與子進程間如何互相調(diào)用參數(shù)

素年錦時
$httpserver = new Worker('websocket://0.0.0.0:1000');
$httpserver->onMessage = function($conhttp,$msg)use($connection)
{
    print_r($msg);
};
$httpserver->onWorkerStart = function($conhttp)
{
    $connection = new AsyncTcpConnection('tcp://10.10.10.200:8021');
        $connection->onMessage = function($connection,$buffer)use($conhttp)
        { 
                  //如何在此處獲取到$msg的值
        };
};
3337 1 0
1個回答

phpcreeper

首先你這也不是父子進程之間的通信,onXXX回調(diào)方法里的都是子進程邏輯。
AsyncTcpConnection(8021) 啥意思? 應該是AsyncTcpConnection(1000),參考代碼【不過只適用于單進程模型】:

<?php
use Workerman\Worker;
use Workerman\Lib\Timer;
use Workerman\Connection\AsyncTcpConnection;
require_once dirname(__DIR__) . '/Workerman/Autoloader.php';

$worker = new Worker('text://0.0.0.0:3000');
$worker->count = 1;

$worker->onWorkerStart = function($worker) {
    $connection = new AsyncTcpConnection('text://127.0.0.1:3000');
    $connection->connect();
    $connection->onMessage = function($connection, $msg){
        pprint($msg);
    };  
}; 

$worker->onMessage = function($connection, $msg){
    foreach($connection->worker->connections as $one_connection){
        $one_connection->send($msg);
    }   
};

Worker::runAll();           

對于多進程之間的通信,有很多方法:
(1)使用官方提供的GlobalData組件 或者 Channle組件。
(2)使用 redis、memcache 或者 mysql 等。
(3)使用類似官方的GatewayWorker通信模型,即:注冊一個全局register進程,$httpserver進程onWorkerStart時連接register進程,這樣當不同進程的客戶端通信時,交由register進程來轉(zhuǎn)發(fā)數(shù)據(jù)。

  • 暫無評論
年代過于久遠,無法發(fā)表回答
??