ホームページ  >  記事  >  バックエンド開発  >  PHPブロック機能を探しています

PHPブロック機能を探しています

WBOY
WBOYオリジナル
2016-06-27 13:18:11994ブラウズ

a.php は実行完了後に終了できず、そこでブロックする必要があるという要件があります。次に、b.php が外部と通信し、外部からのデータをブロックしている a.php に渡します。
その場合、ソケットを使用してネットワークをブロックしないことが最善です。


ディスカッションへの返信 (解決策)

これを識別するには、a.php のパラメーターを使用しないことをお勧めします。
最初に a.php?type=0 にアクセスします。 b.php にアクセスします
最後に a.php?type=1 にアクセスしてください
あなたのニーズを達成することは不可能です!

あなたのニーズを達成することは不可能です!


モデレーターに助けを求めてください。 。なぜこの要件が実現できないのでしょうか?

モデレーターの言うとおりです。a がブロックされているので、どうすれば受信アクションを実行できますか?

a は監視アクションのみを実行でき、ブロックすることはできません


モデレーターは正しいのですが、a はブロックされているので、どうすれば受信アクションを実行できるでしょうか。

a は監視アクションのみを実行でき、ブロックはできません


わかりました。もしかしたら最初から明確にしていなかったのかもしれません。リスニング状態にあるのは一種のブロッキングですか?

http セッションでは、http サーバーの動作プログラムとして php が表示されます。

php が中断された場合、戻りがないため、http サーバーはこのラウンドのセッションを終了しません。

http プロトコルはステートレス プロトコルであるため、セッションは再入できません。 (チャイムインしたいが、どこにチャイムすればよいかわからない)

サーバープッシュを計画していると思います。
この種のアプリケーションはブラウザと密接に関係しているため、現在phpではサポートされていません(もちろん一部のサーバーサイド言語はサポートし始めています)
表示されるphpアプリケーションはサーバーとしてソケットを使用する必要があります。そして、あなたはそれをしたくありません

http セッションでは、php は http サーバーのワーカー プログラムとして表示されます。

php が中断された場合、戻りがないため、http サーバーはこのラウンドのセッションを終了しません。

http プロトコルはステートレス プロトコルであるため、セッションは再入できません。 (チャイムインしたいが、どこにチャイムすればよいかわからない)

サーバープッシュを計画していると思います。
この種のアプリケーションはブラウザと密接に関係しているため、現在 php ではサポートされていません (もちろん一部のサーバーサイド言語ではサポートされ始めています)
できるのは...

そこでモデレータに弱々しく質問してください。プロセス間通信やブロックにはpcntlやpopenを使うことはできないでしょうか?
ただ、Web 上では PCNTL が少し不安定に見えるだけです。 Popenは権限がありすぎてちょっと危険な気がします。

それで、php カーネルまたは apache カーネルを変更する予定ですか?

この能力があれば問題ありません


それでは、php カーネルまたは apache カーネルを変更する予定ですか?

この能力があれば問題ありません


ソケットだけでいいようです、モデレーターありがとうございます

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