ホームページ  >  記事  >  バックエンド開発  >  pthreads マルチスレッドデータ収集

pthreads マルチスレッドデータ収集

WBOY
WBOYオリジナル
2016-07-29 09:07:301023ブラウズ

以前は、curl を使用したマルチスレッドは実際のマルチスレッドではなく、単なるシミュレートされたマルチスレッドでした。現在は、実際のマルチスレッドを実現するために pthreads が使用されています。

ダウンロード:

Windows:

http://windows.php.net/downloads/pecl/releases/pthreads/0.0.45/

mac、unix、linux:

https://github.com /krakjoe/pthreads

インストール方法:

Windows:

pthreadVC2.dllファイルとphp_pthreads.dllファイルを解凍し、vc2ファイルをphp.exeと同じ階層のディレクトリに置き、php_pthreads.dllを拡張ディレクトリに置きます。

php.iniファイルを修正して、extension=php_pthreads.dllを追加します

in in in inaireverture in in 拡張機能。ブログ http://blog.s135.com/pthreads/

メソッドの呼び出し:

具体的な使用法については、ヤン兄弟のブログも参照できます http://blog.s135.com/pthreads/

前の 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 マルチスレッドデータ収集 上記では、pthreads のマルチスレッド データ収集について、その側面も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:phpで遊ぶ次の記事:phpで遊ぶ