0

PHP で記述されたストリーム ソケット サーバーがあります。一度に処理できる接続の数を確認するために、C でシミュレーターを作成して、サーバーに接続する 1000 の異なるクライアントを作成しました。

stream_socket_acceptfalse を数回返していました。この失敗の理由を突き止める必要があります。

エラーコードを取得しようsocket_last_error()socket_strerror()しましたが、「成功」が返されました。これらの関数は、ストリーム ソケットでは機能していないようです。実際のエラーコードを見つける方法/方法はありますか

私のコード:

$socket = @stream_socket_accept($this->master, "-1", $clientIp);

$ip = str_getcsv($clientIp, ":");

//socket accept error

if($socket === FALSE)

{

$this->logservice->log($this->module_name, "ERROR", "cannot accept the device connection");

  ***// Need to find error code here ***

}
4

1 に答える 1

1

ログに PHP レベルのエラー メッセージが表示されるようになりました。@以前のオペレーターstream_socket_acceptはエラーメッセージを抑制していました。( PHP の @ 記号)

于 2013-09-13T07:17:33.630 に答える