ホームページ > バックエンド開発 > PHPチュートリアル > PHPの複数プロセス並列動作を詳しく解説(デーモンプロセスとしても利用可能)_PHPチュートリアル

PHPの複数プロセス並列動作を詳しく解説(デーモンプロセスとしても利用可能)_PHPチュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-21 15:06:10
オリジナル
1029 人が閲覧しました

以下に示すように:

コードをコピーします コードは次のとおりです:

/**
* エントリ関数
* このファイルを ProcessOpera.php として保存します
* ターミナルで /usr/local/php/bin/php ProcessOpera.php &
を実行します*/

ProcessOpera("runCode", array(), 8);

/**
* コードを実行します
 */
function runCode($opt = array()) {
//デーモンプロセスで実行する必要があるコード
}

/**
* $func は、特定の処理を実行する子プロセスの関数名です
* $opt は、$func の配列形式のパラメータです
* $pNum は、fork の子プロセスの数です
*/
function ProcessOpera($ func, $opts = array (), $pNum = 1) {
while(true) {
$pid = pcntl_fork();
if($pid == -1) {
exit("pid fork error");
}
if($ pid) {
static $execute = 0;
$execute++;
if($execute >= $pNum) {
pcntl_wait($status);
$execute--;
}
} else {
while(true) {
//somecode
$func($opts);
sleep(1);
}
exit(0);
}
}
}

http://www.bkjia.com/PHPjc/327645.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/327645.html技術記事以下に示すように: 次のようにコードをコピーします: /** * エントリ関数 * このファイルを ProcessOpera.php として保存 * /usr/local/php/bin/php を実行 ProcessOpera.php nbsp;* ターミナルでプロセスを表示します。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート