2013-04-30 79 views
0

我們做了一個多人遊戲作爲一個facebook應用程序,它通過頻繁的java擴展使用php ve mysql連接來更新日誌和內容。我們可以看到CPU使用率,內存,負載,I/O值,Java堆內存,GC統計信息和線程數量都非常好。幾個小時後,我們開始從我們的java擴展調用的php連接中獲取java套接字錯誤(超時)(我們捕獲異常並將其推送到遊戲的聊天屏幕)Java套接字超時錯誤

爲什麼你認爲會發生這種情況?

謝謝

+0

你讀取超時或連接超時? – user1516873 2013-04-30 08:07:25

+0

java.net.SocketTimeoutException:讀取超時 – Leon 2013-04-30 08:43:17

回答

2

當超時期限內沒有數據到達時,您將收到讀取超時。檢查發件人。

+0

我的理解是否正確,當服務器突然停止發送數據,超時倒計時開始,並且達到指定超時時,會發生超時異常。但是如果它仍然可以從服務器接收數據,倒計時將不會開始?這是我的相關問題:http://stackoverflow.com/questions/22449647/socket-read-timed-out-should-i-go-for-0-inifite – lorraine 2014-03-17 08:31:18

+0

@ yin03正如它在這個答案中所說,閱讀超時發生時沒有數據在超時期限內到達。當您輸入讀取方法時,計時器倒數開始,並在數據到達或到期時停止。 – EJP 2014-03-17 08:53:04