1. 求救 java網路Socket編程的問題啊,總報錯,登錄不了
可能是服務端的問題吧,服務端不發送數據的話readLine就阻塞了,可以設置socket的超時時間、使用非阻塞IO等
2. 如何用java在socket上設置時間延遲
try {
//創建伺服器套接字,於9999埠監聽
ServerSocket server = new ServerSocket(9999);
//設置超時時間,以毫秒為單位,如果accept方法阻塞的時間超過設定的時間,
//將拋出SocketTimeoutException異常
server.setSoTimeout(10000);
//進行阻塞監聽
Socket client = server.accept();
} catch (SocketTimeoutException e) {
System.out.println("連接超時");
}catch (Exception e) {
e.printStackTrace();
}
3. Java:設置Socket超時的setSoTimeout如何理解
您好,提問者:
setSotimeout(10000)是表示如果對方連接狀態10秒沒有收到數據的話強制斷開客戶端。
如果想要長連接的話,可以使用心跳包來通知伺服器,也就是我沒有發給你數據,但是我告訴你我還活著。
4. Java:這兩種設置Socket超時時間的方法有什麼不同嗎
connect timeout 是連接超時, 比如30秒內連接不上。
Socket timeout 是連接上以後,server沒有回應的超時。
5. java.net.SocketTimeoutException: Read timed out
具體的解決方法如下:
修改tomcat配置文件server.xml,找到類似於下面配置:
<Connector port="8086" maxHttpHeaderSize="8192"。
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。
enableLookups="false" redirectPort="8443" acceptCount="100"。
connectionTimeout="20000" disableUploadTimeout="true" /> 。
將上面的參數disableUploadTimeout值改為false即可。
6. java 中socket連接超時報異常 後就中斷執行了,我想讓即使連接超時也可繼續執行下面的程序 該如何實現
try{}catch(Exception ex){}finally{}
把想要異常出現後繼續執行的命令寫在finally里就可以了
7. java中Socket編程如何設置提示ip地址輸入錯誤的代碼
Socket類的public void connect(SocketAddress endpoint, int timeout)方法,第2個參數是設置超時值。達到指定時間還沒連接成功,此方法會拋出SocketTimeoutException;
8. java里socket通信,異常處理問題。
直接用這種方式處理:
while(true){
socket=newSocket(("192.168.183.1",9002);
socket.setSoTimeout(5000);//5000ms=5s
try{
socket.connect();
}catch(IOExceptione){
//這行寫你提示通信失敗提示
continue;
}
}
9. 可以為Java Socket寫消息設置超時嗎
可以。
URLConnection裡面有一個setConnectionTimeout(int timeout);
* @param timeout an {@code int} that specifies the connect
* timeout value in milliseconds