swoole父程序和子程序之間通訊的例子

2022-07-20 13:12:11 字數 1011 閱讀 1961

<?php 

/**這是乙個swoole父程序和子程序之間通訊的例子

*///程序建立成功後**處理

function handle(swoole_process $worker)";

//向程序管道中寫入資料

$pipe = $worker->pipe;//子程序的管道編號

$pid = $worker->pid;//子程序的pid

$worker->write("hello master, this pipe is , pid is ");

sleep(2);

$worker->exit(0);

}//程序數量

$worker_num = 2;

//重定向輸入輸出

$redirect_stdin_stdout = false;

//存放程序的陣列

$workers = ;

//迴圈建立多程序

for($i=0; $i

//主程序

foreach($workers as $pid=>$process)");

//子程序控制代碼從自己的管道中讀取資料

$data = $process->read();

echo php_eol."from worker: ".php_eol;

}

from master: hello worker, this pid is 59673

from worker: hello master, this pipe is 3, pid is 59673

from master: hello worker, this pid is 59675

from worker: hello master, this pipe is 7, pid is 59675

參考子程序的編號pid,可以通過ssh控制台的top命令直接可以看到。

子程序 父程序 子執行緒 父執行緒之間的關係

在父程序中通過fork 函式可以建立子程序,如果返回值 0,為子程序 否則是為父程序。子程序得到的除了 段是與父程序共享以外,其他所有的都是父程序的乙個副本,子程序的所有資源都繼承父程序,得到父程序資源的副本,但是二者並不共享位址空間。兩個是單獨的程序,繼承了以後二者就沒有什麼關聯,子程序單獨執行。...

父程序,子程序,執行緒之間的關係

1 父子程序之間的關係 關於資源 子程序得到的是除了 段是與父程序共享的意外,其他所有的都是得到父程序的乙個副本,子程序的所有資源都繼承父程序,得到父程序資源的副本,既然為副本,也就是說,二者並不共享位址空間。兩個是單獨的程序,繼承了以後二者就沒有什麼關聯了,子程序單獨執行。採用寫時複製技術 關於檔...

父程序,子程序,執行緒之間的關係

1 父子程序之間的關係 子程序得到的除了 段是與父程序共享以外,其他所有的都是得到父程序的乙個副本,子程序的所有資源都繼承父程序,得到父程序資源的副本,二者並不共享位址空間。兩個是單獨的程序,繼承了以後二者就沒有什麼關聯了,子程序單獨執行。採用寫時複製技術 關於檔案描述符 繼承父程序的檔案描述符時,...