亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

php創(chuàng)建恒定數(shù)量的進(jìn)程(pcntl學(xué)習(xí)筆記三)

hizengzeng / 1454人閱讀

摘要:最近在學(xué)習(xí)進(jìn)程相關(guān)的知識,配合實(shí)際編碼,覺得有點(diǎn)意思。閑話不說了,進(jìn)入正題,受網(wǎng)友啟發(fā),如何創(chuàng)建恒定數(shù)量的進(jìn)程呢有進(jìn)程掛了,就創(chuàng)建新的,進(jìn)程,進(jìn)程多了就殺掉幾個(gè)。

最近在學(xué)習(xí)進(jìn)程相關(guān)的知識,配合實(shí)際編碼,覺得有點(diǎn)意思。這段時(shí)間工作不忙,有時(shí)間自己研究進(jìn)步,感覺這才是真正的工作啊。相比上一家公司(壓抑的工作飽和度……)感覺開心很多。下一步再研究一下多線程。看看能不能插入一千萬條數(shù)據(jù)。
閑話不說了,進(jìn)入正題,受網(wǎng)友啟發(fā),如何創(chuàng)建恒定數(shù)量的進(jìn)程呢?有進(jìn)程掛了,就創(chuàng)建新的,進(jìn)程,進(jìn)程多了就殺掉幾個(gè)。網(wǎng)友文章:16歲的鳴人發(fā)送影分身,分出5個(gè)分身
code如下:

 0) {
        return $pid;
    }
    return 0;
}


while(true) {
    if (count($child) < $num) {
        $pid = genarate($minLife, $maxLife);
        echo "child ".$pid." born ".PHP_EOL;
        if($pid) {
            $child[] = $pid;
        }
    } else if ( count($child) > $num ) {
        $pid = array_pop($child);
        posix_kill($pid,SIGINT);
        echo "child ".$pid." killed".PHP_EOL;
    }
    foreach($child as $k => $pid) {
        $res = pcntl_waitpid($pid,$status,WNOHANG);
        if($res == -1 || $res > 0 ) {
            unset($child[$k]);
        }
    }
}

當(dāng)$num=1,$maxLife=1,$minLife=1時(shí)
運(yùn)行結(jié)果如下

只要進(jìn)程一掛掉,就會里面創(chuàng)建新的進(jìn)程。再通過pcntl_signal注冊一個(gè)捕獲信號的回調(diào)方法,應(yīng)該就可以了。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/22718.html

相關(guān)文章

  • php進(jìn)程插入數(shù)據(jù)(pcntl 學(xué)習(xí)筆記二)

    摘要:進(jìn)程切換太多,影響了了效率應(yīng)該是原因之一。當(dāng)時(shí),十萬條記錄,個(gè)進(jìn)程插入總時(shí)間為單進(jìn)程插入萬條數(shù)據(jù),耗時(shí)秒,相對個(gè)進(jìn)程插入萬記錄來說,耗時(shí)少些。而單進(jìn)程插入萬條記錄,耗時(shí),相對來說,是挺慢的了。 個(gè)人在虛擬機(jī)centos7,單核,1G內(nèi)存 /** * 模擬并發(fā)請求,10萬次寫入數(shù)據(jù)庫 * 拆分為10個(gè)進(jìn)程,每個(gè)進(jìn)程處理一萬條插入 */ $total = 10000; $num ...

    CoyPan 評論0 收藏0
  • pcntl擴(kuò)展學(xué)習(xí)筆記一(pcntl_fork與pcntl_wait,串行執(zhí)行分析)

    摘要:對編程的理解,應(yīng)該到深入到操作系統(tǒng)級別。進(jìn)程控制,我一直都沒有接觸,感覺好高端,今天啃了一下擴(kuò)展的最簡單的兩個(gè)函數(shù),有點(diǎn)心得,記錄一下吧,歡迎拋磚。 對編程的理解,應(yīng)該到深入到操作系統(tǒng)級別。進(jìn)程控制,我一直都沒有接觸,感覺好高端,今天啃了一下pcntl擴(kuò)展的最簡單的兩個(gè)函數(shù),有點(diǎn)心得,記錄一下吧,歡迎拋磚。新建代碼文件 pcntl_wait.php,如下: $i = 0; ...

    TesterHome 評論0 收藏0
  • PHPpcntl進(jìn)程控制教程(多進(jìn)程消費(fèi)模型)

    摘要:多進(jìn)程消費(fèi)模型父進(jìn)程等待并控制子進(jìn)程的退出思路整理父進(jìn)程開啟后,直接獲取到子進(jìn)程的,然后存入數(shù)組,子進(jìn)程出來后直接開啟業(yè)務(wù)消費(fèi)代碼,然后退出,然后父進(jìn)程等待子進(jìn)程退出,全部退出后父進(jìn)程結(jié)束代碼請?jiān)谀J较逻\(yùn)行子進(jìn)程的數(shù)量如果是資源類型的變量, 多進(jìn)程消費(fèi)模型 父進(jìn)程等待并控制子進(jìn)程的退出 思路整理 父進(jìn)程開啟后,直接獲取到子進(jìn)程的pid,然后存入child數(shù)組,子進(jìn)程fork出來后直接開...

    617035918 評論0 收藏0
  • workerman筆記-php創(chuàng)建守護(hù)進(jìn)程

    摘要:守護(hù)進(jìn)程常常在系統(tǒng)引導(dǎo)裝入時(shí)啟動,在系統(tǒng)關(guān)閉時(shí)終止。進(jìn)程組有進(jìn)程組來唯一標(biāo)識。且該進(jìn)程組不會因組長進(jìn)程的退出而受到影響。 使用函數(shù) pcntl_fork();//創(chuàng)建子進(jìn)程 posix_setsid();//設(shè)置當(dāng)前進(jìn)程為進(jìn)程組長 posix_getpid();//獲取進(jìn)程id 例子 workerman中將進(jìn)程 /** * Run as deamon mode. * * @th...

    Cristic 評論0 收藏0
  • PHP進(jìn)程系列筆記(一)

    摘要:用于創(chuàng)建子進(jìn)程。該函數(shù)阻塞當(dāng)前進(jìn)程,只到當(dāng)前進(jìn)程的一個(gè)子進(jìn)程退出或者收到一個(gè)結(jié)束當(dāng)前進(jìn)程的信號。注意處需要注意子進(jìn)程需要防止子進(jìn)程也進(jìn)入循環(huán)。如果沒有,最終創(chuàng)建的子進(jìn)程不只個(gè)。 本系列文章將向大家講解pcntl_*系列函數(shù),從而更深入的理解進(jìn)程相關(guān)知識。 PCNTL在PHP中進(jìn)程控制支持默認(rèn)是關(guān)閉的。您需要使用 --enable-pcntl 配置選項(xiàng)重新編譯PHP的 CGI或CLI版本...

    ddongjian0000 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<