老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

php多線程有哪些實現方法

小編給大家分享一下php多線程有哪些實現方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

網站建設哪家好,找創新互聯建站!專注于網頁設計、網站建設、微信開發、小程序定制開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了新城免費建站歡迎大家使用!

1、curl_multi方法

當需要多線程的時候,可以用curl_multi一次性請求多個操作來完成,但curl走的是網絡通信,效率與可靠性就比較差了的。

function main(){ 
 
   $sql = "select waybill_id,order_id from waybill where status>40 order by update_time desc limit 10 "; 
 
    $data = Yii::app()->db->createCommand($sql)->queryAll(); //yii 框架格式 
 
    foreach ($data as $k => $v) {  
 
      if ($k % 2 == 0) { //偶數發一個網址 
 
        $send_data[$k]['url'] = ''; 
 
        $send_data[$k]['body'] = $v['waybill_id']; 
 
      } else { //奇數發送另外一個網址 
        $send_data[$k]['url'] = 'http://www.abc.com'; 
 
        $send_data[$k]['body']=array($v['order_id'] => array('extra' => 16)); 
      } 
    }  
  }

2、通過stream_socket_client 方式

function sendStream() { 
    $english_format_number = number_format($number, 4, '.', ''); 
 
    echo $english_format_number;  
    exit(); 
    $timeout = 10; 
    $result = array(); 
    $sockets = array(); 
    $convenient_read_block = 8192; 
    $host = "test.local.com"; 
    $sql = "select waybill_id,order_id from xm_waybill where status>40 order by update_time desc limit 1 ";  
    $data = Yii::app()->db->createCommand($sql)->queryAll(); 
    $id = 0; 
 
    foreach ($data as $k => $v) { 
      if ($k % 2 == 0) { 
        $send_data[$k]['body'] = NoticeOrder::getSendData($v['waybill_id']); 
 
      } else { 
        $send_data[$k]['body'] = array($v['order_id'] => array('extra' => 16));  
      }  
      $data = json_encode($send_data[$k]['body']); 
      $s = stream_socket_client($host . ":80", $errno, $errstr, $timeout, STREAM_CLIENT_ASYNC_CONNECT | STREAM_CLIENT_CONNECT); 
      if ($s) {  
        $sockets[$id++] = $s; 
        $http_message = "GET /php/test.php?data=" . $data . " HTTP/1.0\r\nHost:" . $host . "\r\n\r\n";  
        fwrite($s, $http_message); 
      } else {  
        echo "Stream " . $id . " failed to open correctly."; 
      }  
    } 
 }

3、通過多進程代替多線程

function daemon($func_name,$args,$number){ 
  while(true){ 
    $pid=pcntl_fork(); 
    if($pid==-1){ 
      echo "fork process fail"; 
      exit(); 
    }elseif($pid){//創建的子進程 
 
      static $num=0; 
      $num++; 
      if($num>=$number){ 
        //當進程數量達到一定數量時候,就對子進程進行回收。 
        pcntl_wait($status); 
 
        $num--; 
      }  
    }else{ //為0 則代表是子進程創建的,則直接進入工作狀態 
 
      if(function_exists($func_name)){ 
        while (true) { 
          $ppid=posix_getpid(); 
          var_dump($ppid); 
          call_user_func_array($func_name,$args); 
          sleep(2); 
        } 
      }else{ 
        echo "function is not exists"; 
      } 
      exit();   
    } 
  } 
}  
function worker($args){  
  //do something 
 
}  
daemon('worker',array(1),2);

以上是php多線程有哪些實現方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創新互聯行業資訊頻道!


網站題目:php多線程有哪些實現方法
當前路徑:http://www.xueling.net.cn/article/jodpse.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 222aaa精品影院 | 天天爽天天狠久久久综合麻豆 | 国语自产偷拍精品视频偷 | 日本一区二区福利视频 | 无码人妻丝袜在线视频 | 国产精品色哟哟 | 欧美日韩免费专区在线 | 国产99re热视频这里只有免费精品 | 国产在线精品91 | 欧美成人免费在线 | 亚洲男人的天堂在线播放 | 狠狠躁夜夜躁人人爽天天不卡软件 | 伦埋琪琪深夜福利 | 夜夜嗨av一区二区三区四季av | 久久精品国产a三级三级三级 | 深夜福利在线播放 | 免费A级毛片无码久久版 | 亚洲AⅤ无码精品色情午在线 | 亚洲双插| 亚洲看片wwwwf5con | 成人午夜高潮a∨猛片 | 成人性生交a做片 | 亚洲AV无码一区二区三区国产 | a级毛片免费全部播放无码 一区二区在线免费观看视频 | 国产高清av在线一区二区三区 | 久久久久久成人毛片免费看 | 黑人巨大精品欧美一区二区蜜桃 | 一级免费在线视频 | 欧美老妇疯狂xxxxbbbb | 538在线一区二区精品国产 | 视频免费网站入口 | 色播影院性播影院私人影院 | 久久草在线观看视频 | 办公室特殊服务2在线观看 亚洲综合视频网站 | 一二三区在线免费观看 | 少妇做爰免费视频网站裸体艺术 | 久久在线免费 | 久草在线观看福利视频 | 国产女人AAA级久久久级 | 性按摩xxxx| 久草在线资源网站 |