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