検索
ホームページphp教程PHP开发PHP でスレッド マルチスレッド拡張機能をインストールするための基本チュートリアル

1. pthreads 拡張機能をダウンロードします

ダウンロード アドレス: http://windows.php.net/downloads/pecl/releases/pthreads

2. PHP が ts バージョンであるか nts バージョンであるかを確認します

phpinfo( ); 安全性項目。この項目は、スレッド セーフであるかどうかを確認します。有効な場合、一般的には ts バージョンである必要があり、それ以外の場合は nts バージョンである必要があります。

3. PHP tsnts バージョンに従って、対応する pthreads バージョンを選択します

私の php バージョンは 5.4.17 なので、php_pthreads-0.1.0-5.4-ts-vc9-x86.zip ファイル パッケージをダウンロードします (0.1.0)。は現在の pthreads バージョン番号を表し、5.4 は PHP バージョン番号を表します。ts は以前に PHP に対応すると判断された ts および nts バージョンを表します。vs9 は Visual Studio 2008 コンパイラによってコンパイルされたバージョンを表し、最後の x86 は 32-ビットバージョン。

4. pthreads 拡張機能をダウンロードします

ダウンロード アドレス: http://windows.php.net/downloads/pecl/releases/pthreads

5. pthreads 拡張機能をインストールします

php_pthreads.dll をディレクトリ binphpext にコピーします。
pthreadVC2.dll をディレクトリ binphp にコピーします。
pthreadVC2.dll をディレクトリ C:windowssystem32 にコピーします。
PHP設定ファイルphp.iniを開きます。最後に extension=php_pthreads.dll を追加します
ヒント! Windows システムでは、pthreadVC2.dll のパスを PATH 環境変数に追加する必要があります。 [マイ コンピュータ] --->マウスの右ボタン ---> [プロパティ] ---> [詳細設定] ---> 環境変数 --->システム変数 --->Path という名前のパスを検索 ---> ;編集--->変数値の末尾に pthreadVC2.dll のフル パスを追加します (私の場合は C:WINDOWSsystem32pthreadVC2.dll です)。

6. スレッドクラスを追加します

<?php
class Thread
{
  var $hooks = array();
  var $args = array();
  function thread()
  {
  }
  function addthread($func)
  {
    $args = array_slice(func_get_args(), 1);
    $this->hooks[] = $func;
    $this->args[] = $args;
    return true;
  }
  function runthread()
  {
    if(isset($_GET[&#39;flag&#39;]))
    {
      $flag = intval($_GET[&#39;flag&#39;]);
    }
    if($flag || $flag === 0)
    {
      call_user_func_array($this->hooks[$flag], $this->args[$flag]);
    }
    else
    {
      for($i = 0, $size = count($this->hooks); $i < $size; $i++)
      {
        $fp=fsockopen($_SERVER[&#39;HTTP_HOST&#39;],$_SERVER[&#39;SERVER_PORT&#39;]);
        if($fp)
        {
          $out = "GET {$_SERVER[&#39;PHP_SELF&#39;]}?flag=$i HTTP/1.1rn";
          $out .= "Host: {$_SERVER[&#39;HTTP_HOST&#39;]}rn";
          $out .= "Connection: Closernrn";
          fputs($fp,$out);
          fclose($fp);
        }
      }
    }
  }
}


7. pthreads 拡張機能をテストします

include(&#39;thread.php&#39;);
class AsyncOperation extends Thread {
  public function __construct($arg){
    $this->arg = $arg;
  }
  public function run(){
    if($this->arg){
      printf("Hello %s\n", $this->arg);
    }
  }
}
$thread = new AsyncOperation("World");
if($thread->start())
  $thread->join();

上記の内容は、PHP でスレッドマルチスレッド拡張機能をインストールする基本的なチュートリアルを紹介しています。

PHP インストール スレッド、マルチスレッド拡張機能の基本チュートリアルに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。


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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール