Weibo Qzone WeChat pcntl_fork は PHP マルチプロセスを実装します

小云云
リリース: 2017-11-03 13:57:33
オリジナル
1921 人が閲覧しました

PHP エンジニアは通常、PHP プロセスをスケジュールするために PHP-FMP を使用します。PHP の用途は Web に限定されず、システム ツールのプログラミング、監視、運用および保守にも使用できます。次に、PHP マルチプロセス プログラミングを実装する方法について説明します。

まず、構成情報を読み取るために使用されるメインプロセスを開始します

たとえば、5 つのインジケーターを監視する必要があると読みました。次に、メインプロセスは 5 つのサブプロセスを開始して、これら 5 つのインジケーターをそれぞれ監視します。

操作を簡略化します: 1 つのメインプロセスが 5 つのサブプロセスを作成します

プロセスを作成するには、PHP の関数 pcntl_fork() を使用する必要があります。この関数に慣れていない人もいるかもしれません。 Linux CプログラミングはLinuxを知る 以下にfork()という子プロセスを作成する関数があります。

この機能は Linux でのみ使用でき、pcntl 拡張機能がインストールされている必要があることに注意してください。

公式ドキュメントには次のように書かれています:

pcntl_fork() 関数は子プロセスを作成します。この子プロセスは、PID (プロセス番号) と PPID (親プロセス番号) においてのみ親プロセスと異なります。システム上での fork の動作の詳細については、システムの fork(2) マニュアルを参照してください。

成功すると、親プロセス実行スレッドには生成された子プロセスのPIDが、子プロセス実行スレッドには0が返されます。失敗すると、親プロセス コンテキストで -1 が返され、子プロセスは作成されず、PHP エラーが発生します。

このようにして、子プロセスを作成することができます。子プロセスが正常に作成されると、pcntl_fork()以降のメソッドが実行されます。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート