我想發送一個命令到服務器,並找出我是否得到迴應。如何在不阻塞的情況下從Java中的BufferedReader中讀取數據?
現在我正在使用BufferedReader
的readline()
函數,它會阻塞,直到有服務器的響應,但我想要做的就是驗證服務器首先有響應。
我嘗試使用ready()
或reset()
來避免這個阻止,但它沒有幫助。
這導致我的程序卡住等待服務器響應,這從來沒有發生過。通過我對事物的理解,InputStreamReader
似乎也做了同樣的事情。
其他問題我在這裏找到關於這個問題沒有回答我的問題, 所以請如果你能回答我的問題,它會很好。
有趣的是,如果服務器做了flush()並確保發送了一個換行符('println')。 –
阻止直到有迴應並找出是否有迴應,有什麼區別?無論如何,您必須在服務器上等待。 – EJP