2012-05-16 42 views
0

我有一個客戶端/服務器應用程序完全像這個鏈接。當我說我的意思是我複製並粘貼它,並調整IP和端口的東西到我的電腦。當從服務器讀取輸入時,我的程序掛起一行。Java

http://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html

當我到哪裏,我需要從服務器讀取線(客戶端)我的程序只是掛起並不會繼續的部分。這是該行:

while ((fromServer = in.readLine()) != null) { 

即使其爲null,則不會繼續只是卡住這條線...... 如何解決呢?

+0

你確定你正確啓動服務器嗎? – aioobe

+0

在這裏發佈你的整個代碼仍然可能是值得的。複製和粘貼代碼時,我們都會犯錯。您可能錯過了服務器打印可能導致客戶端代碼掛起的客戶端的行。 – Alvin

+0

您正在接收線路。你發送電話嗎?與行終止符? – EJP

回答

2

in.readLine()與Java中的大多數讀者一樣,會使應用程序掛起(等待),直到獲取一些數據讀取。

我的猜測是你的客戶端根本沒有收到任何數據,這就是爲什麼你會得到掛起。確保你的客戶端連接正確,你的服務器設置正確,並且服務器實際上是將數據發送給你的客戶端(並且它實際上到達你的客戶端)。

相關問題