ソケット接続を使用して C アプリケーションでサーバーに接続しています。たまにサーバーが何も返さないことがあります。私は何も意味しません。だから私のアプリケーションはハングします。タイムアウトを使用してみました:
signal(SIGALRM, timeouthandler);
alarm(myTimeout);
(socket and connection logic)...
alarm(0);
それでもハングし、スクリプトに戻りません。同僚は、私がブロッキング接続を使用している可能性があると言いました。しかし、私が読んでいることから、接続が既に確立された後、接続を非ブロッキングに設定します。
何を調べる必要がありますか?