お世話になります。kakiです。 現在、LAN経由でクライアントから送られてくる(55msec毎)データを、 取得し、表示するHTTPサーバーを作成しています。 サーバー側で、クライアントと接続中にLANケーブルが抜けたのを 検出するのに、受信ループ中のping()で戻り値を判断して、 抜けているかどうかを判断しようとしていますが、 この方法は正攻法なのでしょうか? また、その方法を試そうと思ったのですが、 accept()後のrecv()で受信待ちをしてしまっている為、 ケーブル断が検出できていません。 受信待ちをしないよう、socket()後にfcntl(s,F_SETFL,O_NONBLOCK)と しているのですがrecv()でとまっているようです。 fcntl()の使い方が間違っているのでしょうか? |