婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP多進程簡單實例小結

PHP多進程簡單實例小結

熱門標簽:高德地圖標注店鋪收費嗎 泊頭在哪里辦理400電話 天潤融通外呼系統好嗎 江西電銷機器人收費 電銷機器人沒有效果怎么樣 高德地圖標注位置怎么標注 杭州語音電銷機器人 欣思維地圖標注 江門回撥外呼系統

本文實例講述了PHP多進程。分享給大家供大家參考,具體如下:

PHP創建多進程需要使用到pcntl模塊 在編譯時加上--enable-pcntl打開進程控制支持,不是Unix類系統不支持此模塊

php官網介紹http://php.net/manual/zh/book.pcntl.php,創建子進程需要使用到pcntl_fork(),文檔上介紹該函數說 ,pcntl_fork — 在當前進程當前位置產生分支(子進程)。

譯注:fork是創建了一個子進程,父進程和子進程 都從fork的位置開始向下繼續執行,不同的是父進程執行過程中,得到的fork返回值為子進程號,而子進程得到的是0。失敗時,在 父進程上下文返回-1,不會創建子進程,并且會引發一個PHP錯誤。

?php
  $pid = pcntl_fork();
  var_dumP($pid);
?>

運行上面面代碼,會返回兩個值,一個是0和子進程的PID;

?php
  $i=0;
  while($i!=5){
     $pid = pcntl_fork();
     echo "進程ID:".$pid."==".$i++.PHP_EOL;
  }   
?>

運行上面程序發現進程數指數增長 剛好是2^5=32個;原因是每一條都執行了while循環,到最后成了進程的指數增長——也就是說fork的時候把while循環也帶了進去,父進程在執行fork的過程中;會得到子進程的進程號

而子進程會的得到是0;意味著0就是子進程標志;改正后代碼是這樣的

?php
  $i=0;
  while($i!=5){
    $pid = pcntl_fork();
    echo "進程ID:".$pid."==".$i++.PHP_EOL;
    if ($pid == 0) {
      //code
      exit(0);
    }
  }
?>

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP進程與線程操作技巧總結》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • php多進程中的阻塞與非阻塞操作實例分析
  • php多進程并發編程防止出現僵尸進程的方法分析
  • php 的多進程操作實踐案例分析
  • php 多進程編程父進程的阻塞與非阻塞實例分析
  • php實現的簡單多進程服務器類完整示例
  • PHP 多進程與信號中斷實現多任務常駐內存管理實例方法
  • php swoole多進程/多線程用法示例【基于php7nts版】
  • PHP基于swoole多進程操作示例
  • 詳解PHP多進程消費隊列

標簽:駐馬店 內江 雙鴨山 石嘴山 大同 深圳 江門 平涼

巨人網絡通訊聲明:本文標題《PHP多進程簡單實例小結》,本文關鍵詞  PHP,多,進程,簡單,實例,小結,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP多進程簡單實例小結》相關的同類信息!
  • 本頁收集關于PHP多進程簡單實例小結的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 阳泉市| 孙吴县| 松滋市| 安泽县| 平阴县| 牟定县| 雷州市| 邵武市| 南靖县| 仙桃市| 饶平县| 旬邑县| 谢通门县| 共和县| 克拉玛依市| 莲花县| 托里县| 新宁县| 武安市| 邵阳市| 锦屏县| 扎赉特旗| 观塘区| 临朐县| 鄯善县| 瑞安市| 佛山市| 图木舒克市| 遵义市| 吉林市| 新泰市| 彰化市| 夏河县| 武鸣县| 兴安盟| 吐鲁番市| 桂阳县| 金沙县| 杭锦后旗| 平武县| 洞口县|