pthreads多執行緒資料收集

WBOY
發布: 2016-07-29 09:07:30
原創
1024 人瀏覽過

以前使用curl的多線程並不是真正的多線程,只是一種模擬的多線程,現在使用pthreads來實現真正意義上的多線程。

下載:

  windows下:

    http://windows.php.net/downloads/pecl/releases/pthreads/0.0.45/php.net/downloads/pecl/releases/pthreads/0.0.45/php.net/downloads/pecl/releases/pthreads/0.0.45/php.net/downloads/pecl/releases/pthreads/0.0.45/php.net/downloads/pecl/releases/pthreads/0.0.45/php.net/35/  https://github. com/krakjoe/pthreads

安裝方式:

  windows下:

    解壓得到pthreadVC2.dll和php_pthreads.dll檔文件,把同級檔放到pthread

    修改php.ini檔案新增extension=php_pthreads.dll

    修改Apache設定檔httpd.confLoadFile "yourpath/php/p.p.Smache配置    具體可參考宴哥的部落格http://blog.s135.com/pthreads/

呼叫方式:

  具體的用法也可以參考宴哥的部落格http://blog.s135.com/pthreads/

  結合以前的get_html也可以結合以前的get_html也可以結合以前的get_html 這樣來實現類別

 1 class threads extends Thread
 2 {
 3     public $url = '';
 4     public $options = array();
 5     public $data;
 6 
 7     public function __construct($url, $options = array()){
 8         $this->url = $url;
 9         $this->options = $options;
10     }
11 
12     public function run(){
13         if(!empty($this->url)){
14             $this->data = $this->get_html($this->url, $this->options);
15         }
16     }
17 
18     public function get_html($url,$options = array()){
19         if(empty($options)){
20             $options[CURLOPT_RETURNTRANSFER] = true;
21             $options[CURLOPT_TIMEOUT] = 5;
22         }
23         $ch = curl_init($url);
24         curl_setopt_array($ch,$options);
25         $html = curl_exec($ch);
26         curl_close($ch);
27         if($html === false){
28             return false;
29         }
30         return $html;
31     }
32 }
登入後複製

pthreads多執行緒資料收集 以上就介紹了pthreads多執行緒資料收集,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板