ホームページ >バックエンド開発 >PHPチュートリアル >PHP スレッド ライブラリ: pthreads

PHP スレッド ライブラリ: pthreads

WBOY
WBOYオリジナル
2016-07-25 09:12:301246ブラウズ

このプロジェクトは、PHP 用の POSIX ベースのマルチスレッド プログラミング メカニズムを提供します。定義されたユーザー定義のメソッドと関数は非同期で実行できます。同期および同期メソッドの組み込みサポート。

ハイライト

  • 使いやすく、すぐに習得できる PHP5.3 以降のスレッド API
  • 事前定義されたすべてのメソッドとユーザー宣言されたメソッドと関数を非同期で実行します
  • PHP 環境に合わせた既製の同期が含まれています
  • マルチスレッドSAPI環境でのシームレスな操作
  • 可能性の世界...

技術的特徴

  • Posix スレッド
  • 同期
  • ワーカースレッド
  • 同期メソッド
  • OO の完全なサポート - 例: 特性、インターフェース、継承
  • スレッド化されたオブジェクトの読み取り/書き込み/実行を完全にサポート
  • ミューテックス (直接、サブセット)
  • 条件 (直接、サブセット)

pthreads は、単純さ、互換性、効率性を念頭に置いて書かれており、パフォーマンスは信じられないほどです !!

環境要件

  • PHP5.3+
  • ZTS 有効 (スレッド セーフティ)
  • Posix スレッドの実装

テストはx86、x64、ARM上で実施されました。一般に必要なのはコンパイラとpthread.hだけです

サポートされているPHPバージョン

pthreads は、5.3.0 から最新リリースまでの PHP のどのバージョンでもコンパイルして動作する必要があります。

サンプルコード:

  1. class AsyncOperation extends Thread {
  2. public function __construct($arg){
  3. $this->arg = $arg;
  4. }
  5. public function run(){
  6. if($this->arg){
  7. printf("Hello %sn", $this->arg);
  8. }
  9. }
  10. }
  11. $thread = new AsyncOperation("World");
  12. if($thread ->start())
  13. $thread->join();
  14. ?>
コードをコピー

プロジェクトホームページ:http://www.open-open.com/lib/view/ホーム/1391824675848



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