PHPからWebSocketサーバーに接続できるWebSocketクライアント用のPHPクラスを作成しました。無限ループでのみデータを読み取ることができることを除いて、非常にうまく機能します。WebSocket接続では、サーバーまたはクライアントは、必要なときに何度でもデータを送信できます。残念ながら、、、socket_selectおよびsocket_readは、他のソケットからデータが送信されたsocket_recv場合はブロックされません-socket_selectすぐにsocket_read返されsocket_recv、空の文字列が返されます。プロセスを受信するまでスリープさせようとしましたSIGPOLLが、それが原因で無期限にスリープしました。データがすでに受信された後、ソケットでより多くのデータが利用可能であることを知る方法はありますか?
1026 次