Serviceを読んで理解し、同意したものとみなします。266件0「SocketのInputStream、OutputStreamのタイムアウト値を個別に設定する方法」について、教えていただけないでしょうか。送信(OutputStream)のみタイムアウト値を設定することは可能でしょうか?Java1.4を利用して、以下のようにSocket接続をしているのですが、Socket#setSoTimeoutでタイムアウト値を指定すると、データの送受信がないときにソケットが閉じられてしまいます。KeepAliveを有効にするといった方法が取れるような気がします。票0送信時エラーを検知して閉じたいのであれば、このようにすれば良いのではないでしょうか。closeSocket();}あるいは、相手側は一定時間おきに接続維持のための信号(HeartBeat的なもの)を送る、というプロトコルにしておいてsocketTimeoutの設定(setSoTimeout)によって、相手側がN/W的に死んだことを検知する、というのはいかがでしょうか。|0返信ありがとうございます。私が携わっている環境は、組み込み機器のためJava1.4ベースです。ブラウザ(主にChrome)と通信するHTML5のWebSocketサーバーを設計したく、質問させていただきました。初回の送受信が成功したあとにネットワークケーブルを抜いたとき、IOExceptionは発火されず未応答状態になるようです。setKeepAlive()調べてみました、私には難しかったです。tcp_keepalive_timeなども設定できるかを調べてみます。(無通信時間がデフォルト2時間は、私の環境では長すぎます。不可なら独自にタイムアウト監視処理(タイムアウトを検知したらshutdownOutputメソッドをコール)を用意せざるを得ないのかなという方針で進めていくべきかなと思いました。ありがとうございました。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。