- - PR -
CLOSE_WAITについて
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-21 12:32
ぽんすさま
返信ありがとうございました。
申し訳ありません。これはソース貼り付けの際のこちらのミスです。 ご指摘の部分のソースの修正も含め、色々やってみました。 試行錯誤している際、一度クライアントプログラムを動かしているPCと サーバープログラムを動かしているPCを逆にしてみようと思い、逆にして 動かしてみました。すると同じプログラムであるにも関わらずCLOSE_WAITは 発生しませんでした。同じソースなのにクライアントとサーバーを変えただけで 結果が違うようになり、ますます混乱してしまいました。 ちなみにFedoracore4がサーバー、RedHat7.2がクライアントの場合にCLOSE_WAITが 発生し、逆にすると発生しませんでした。2種類しか検証してないのでこの辺りは 関係あるのかどうかはわかりませんが・・・ もうしばらく試行錯誤してみようと思います。引き続きご指摘等あればよろしくお願いします。 | ||||
|
投稿日時: 2006-05-21 20:48
いくつかポイントを。
・全く同じ操作を行っているか? ・完全に同一のソースコードであるか? ・gccに-Wallオプションを付けて警告が表示されない、もしくは絶対に問題無いと 確信できる警告以外表示されないようにすること ・クライアント側はtelnetで操作すると分析しやすい ・tcpdump、ethereal等のツールを使用して、何が起きているのか調べる ・OSがLinuxなら、ポートを使用しているプロセスは、rootユーザで 「lsof -i:ポート番号」を実行すると分かる ・「あらゆる関数はエラーとなる可能性がある」と思うこと。マニュアルに 「必ず成功する」と書かれている関数は除く。 「すべての条件分岐は、望んだとおりの側に行かない可能性がある」と思うこと。 |