ホームページ >バックエンド開発 >PHPチュートリアル >PHPでマルチプロセスとマルチタスクを実装するコードの例

PHPでマルチプロセスとマルチタスクを実装するコードの例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-25 08:58:351599ブラウズ
  1. /**

  2. *PHP5 ベース
  3. *proc_open の助けを借りて
  4. *複数のプロセスを開始できるので、想像力を使ってやりたいことを実行できます
  5. *Linux 上で php を実行していて、pcntl モジュールを有効にしている場合は、pcntl 関数を使用した方がよいでしょう。
  6. *最終更新日: bbs.it-home.org 2013/6/20
  7. **/
  8. error_reporting(E_ALL);
  9. set_time_limit(0);

  10. クラス スレッド {

  11. protected $_pref; // プロセス参照
  12. protected static $_instance = null;
  13. 保護された $_pipes;

  14. プライベート関数 __construct() {

  15. $this->_pref = 0;
  16. }

  17. public static function getInstance($file) {

  18. if (null == self::$_instance) {
  19. self::$_instance = 新しい self;
  20. }

  21. $descriptor = array(

  22. 0 => array("pipe", "r"),
  23. 1 => array("pipe", "w"),
  24. 2 => array("file", ". /error-output.txt", "a"),
  25. );
  26. self::$_instance->_pref = proc_open("php -q $file", $descriptor, self::$_instance->_pipes);
  27. true を返します。
  28. }

  29. パブリック関数 __destruct() {

  30. proc_close($this->_pref);
  31. $this->_pref = null;
  32. }
  33. ?>

复制幣


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