中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站做法外貿(mào)海外推廣

網(wǎng)站做法,外貿(mào)海外推廣,集團(tuán)網(wǎng)站制作方案ppt,wordpress 爬蟲(chóng) 視頻swoole文檔:Swoole 文檔 process子進(jìn)程和父進(jìn)程之間通信,依靠監(jiān)聽(tīng)。子進(jìn)程和父進(jìn)程分別做監(jiān)聽(tīng)。父進(jìn)程寫入信息,子進(jìn)程監(jiān)聽(tīng)接收。子進(jìn)程向父進(jìn)程寫入,調(diào)用父進(jìn)程監(jiān)聽(tīng)。 子進(jìn)程向父進(jìn)程寫入信息有兩種方式,一種調(diào)用wr…

swoole文檔:Swoole 文檔

process子進(jìn)程和父進(jìn)程之間通信,依靠監(jiān)聽(tīng)。子進(jìn)程和父進(jìn)程分別做監(jiān)聽(tīng)。父進(jìn)程寫入信息,子進(jìn)程監(jiān)聽(tīng)接收。子進(jìn)程向父進(jìn)程寫入,調(diào)用父進(jìn)程監(jiān)聽(tīng)。

子進(jìn)程向父進(jìn)程寫入信息有兩種方式,一種調(diào)用write寫入管道,一種是直接輸出寫入管道。在創(chuàng)建進(jìn)程的時(shí)候控制。

一 調(diào)用write寫入管道

function test3()
{$p = new Swoole\Process(function ($worker) {Swoole\Event::add($worker->pipe, function () use ($worker) {$data = $worker->read();echo "sub:" . $data . PHP_EOL;$data = 'worker:' . $data;$worker->write($data); //寫入父線程 2});}, false, 2);$p->start();Swoole\Event::add($p->pipe, function () use ($p) {$data = $p->read();echo 'P:' . $data . PHP_EOL; //最終輸出 3});$p->write('123'); //請(qǐng)求子線程 1
}
test3();
sub:123
P:worker:123

二 直接輸出到管道

function test2()
{$p = new Swoole\Process(function ($worker) {Swoole\Event::add($worker->pipe, function () use ($worker) {$data = $worker->read();echo 'worker:' . $data . PHP_EOL; //直接寫入父線程 2});}, true, 2);$p->start();Swoole\Event::add($p->pipe, function () use ($p) {$data = $p->read();echo 'P:' . $data . PHP_EOL; //最終輸出 3});$p->write('123'); //請(qǐng)求子線程 1
}
test2();
P:worker:123

新建process之后,在其回調(diào)中創(chuàng)建的監(jiān)聽(tīng)是子進(jìn)程的監(jiān)聽(tīng),使用其對(duì)象創(chuàng)建的監(jiān)聽(tīng)是父進(jìn)程的監(jiān)聽(tīng)。

三 其他

其實(shí)子進(jìn)程不做監(jiān)聽(tīng)也能收到父進(jìn)程發(fā)送的信息,但是直接讀信息和監(jiān)聽(tīng)都存在的情況下,先執(zhí)行直接讀取的,可能監(jiān)聽(tīng)不會(huì)執(zhí)行。根據(jù)文檔,監(jiān)聽(tīng)必須在線程啟動(dòng)后設(shè)置。根據(jù)查的資料,event觸發(fā)條件是句柄文件的改變,即類似于例子中的$p->pipe改變,否則不會(huì)觸發(fā)。

使用event監(jiān)聽(tīng)是異步的??吹絙站上有個(gè)例子代碼如下

 public function onMessage(Swoole\WebSocket\Server $server, Swoole\WebSocket\Frame $frame){$data = $frame->data;$data = json_decode($data);$cmd = $data['cmd']; //命令$fd = $frame->fd;$is_block = isset($data['is_block']) ? $data['is_block'] : 0;if ($is_block) {if (isset($this->process_list[$fd])) {$process = $this->process_list[$fd];} else {//新建子進(jìn)程$process = new Swoole\Process([$this, 'do_time_process'], true, 2);$process->start();$this->process_list[$fd] = $process;Swoole\Event::add($process->pipe, function () use ($process, $frame) {$data = $process->read();$this->server->push($frame->fd, $data);});}$process->write($cmd);sleep(1);} else {$this->process->write($cmd);$data = $this->process->read();$this->server->push($frame->fd, $data);}}//子進(jìn)程public function do_time_process(Swoole\Process $worker){$cmd = $worker->read();//函數(shù)打開(kāi)進(jìn)程文件指針。打開(kāi)一個(gè)指向進(jìn)程的管道,該進(jìn)程由派生指定的 command 命令執(zhí)行而產(chǎn)生$handle = popen($cmd, 'r');Swoole\Event::add($worker->pipe, function () use ($worker, $handle) {$cmd = $worker->read();if ('exit' == $cmd) {$worker->exit();}//向管道寫入內(nèi)容fwrite($handle, $cmd);});//feof() 函數(shù)檢查是否已到達(dá)文件末尾(EOF)while (!feof($handle)) {$str = fread($handle, 18192);$worker->write($str); //向父進(jìn)程寫入//echo $str;}}

do_time_process中設(shè)置event監(jiān)聽(tīng)的目的是,在執(zhí)行不會(huì)自己結(jié)束的命令時(shí),可以再次設(shè)置命令執(zhí)行退出等操作。比如linux中ping命令。還沒(méi)測(cè)試好,本來(lái)想寫個(gè)例子試試,但是按照以上內(nèi)容寫的,子進(jìn)程中的監(jiān)聽(tīng)一直沒(méi)有被觸發(fā)。

四 參考

【swoole 入門課程】https://www.bilibili.com/video/BV1dt411a7Tb?p=4&vd_source=f1bd3b5218c30adf0a002c8c937e0a27

swoole_event_add · Swoole文檔 · 看云

PHP swoole的process模塊創(chuàng)建和使用子進(jìn)程操作示例_php技巧_腳本之家

帶你學(xué)習(xí)swoole_process詳解 · php開(kāi)發(fā)筆記 · 看云

http://www.risenshineclean.com/news/60804.html

相關(guān)文章:

  • 網(wǎng)站用ps做還是aiseo關(guān)鍵詞優(yōu)化系統(tǒng)
  • 自己的網(wǎng)站沒(méi)有域名解析深圳今日重大新聞
  • 麗水做企業(yè)網(wǎng)站的公司在線注冊(cè)網(wǎng)站
  • 網(wǎng)站開(kāi)發(fā)語(yǔ)言揭陽(yáng)百度seo公司
  • 做面包有關(guān)電影網(wǎng)站百度導(dǎo)航下載2021最新版
  • 網(wǎng)站技術(shù)報(bào)務(wù)費(fèi)如何做會(huì)計(jì)分錄搜索網(wǎng)站排名
  • 貴陽(yáng)網(wǎng)絡(luò)網(wǎng)站建設(shè)八上數(shù)學(xué)優(yōu)化設(shè)計(jì)答案
  • html網(wǎng)站開(kāi)發(fā)實(shí)戰(zhàn)教程seo營(yíng)銷是什么意思
  • 學(xué)術(shù)會(huì)議網(wǎng)站怎么做seo描述快速排名
  • 去除wordpress 廣告湖南正規(guī)關(guān)鍵詞優(yōu)化首選
  • 做淘寶相關(guān)網(wǎng)站seo下載站
  • 做招聘信息的網(wǎng)站有哪些內(nèi)容重慶網(wǎng)站關(guān)鍵詞排名
  • 雄安新區(qū)做網(wǎng)站公司東莞整站優(yōu)化推廣公司找火速
  • 余姚網(wǎng)站推廣優(yōu)化工具箱
  • 怎么建立一個(gè)網(wǎng)站csdn中國(guó)十大電商平臺(tái)有哪些
  • 貴州省交通建設(shè)工程質(zhì)量監(jiān)督局網(wǎng)站大數(shù)據(jù)精準(zhǔn)營(yíng)銷案例
  • 做網(wǎng)站好的網(wǎng)站建設(shè)公司百度世界500強(qiáng)排名
  • 做微信活動(dòng)是做網(wǎng)站還是做小程序好百度地圖導(dǎo)航2022最新版
  • 淘寶做首頁(yè)熱點(diǎn)的什么網(wǎng)站微信營(yíng)銷軟件哪個(gè)好用
  • 網(wǎng)站開(kāi)發(fā) 網(wǎng)絡(luò)工程 哪個(gè)好設(shè)計(jì)網(wǎng)頁(yè)的軟件
  • 做公眾號(hào)還是網(wǎng)站百度一下你就知道了主頁(yè)
  • 網(wǎng)站建設(shè)維護(hù)php網(wǎng)上互聯(lián)網(wǎng)推廣
  • 貴司不斷優(yōu)化網(wǎng)站建設(shè)軟文世界平臺(tái)
  • 企業(yè)網(wǎng)站免費(fèi)建站程序百度官網(wǎng)app下載安裝
  • 廈門的企業(yè)網(wǎng)站國(guó)際新聞今日頭條
  • 英文商務(wù)網(wǎng)站制作百度互聯(lián)網(wǎng)營(yíng)銷是什么
  • 網(wǎng)站備案信息核驗(yàn)單填寫成都網(wǎng)絡(luò)推廣優(yōu)化
  • 做百度移動(dòng)端網(wǎng)站優(yōu)web成品網(wǎng)站源碼免費(fèi)
  • 如何注冊(cè)公司網(wǎng)站免費(fèi)注冊(cè)百度競(jìng)價(jià)排名服務(wù)
  • wordpress+更新+慢贛州seo