我想通過打開TCP套接字來手動執行一些HTTP,發送請求並讀取/打印響應消息。響應主體的內容打印良好,但主線程永遠不會退出並永遠阻止。爲什麼從套接字流中讀取塊永遠不變?
socket = new Socket(host, port);
PrintWriter writer = new PrintWriter(socket.getOutputStream());
writer.print(request);
writer.flush();
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
reader.lines().forEach(System.out::println);
// String next_record = null;
// while ((next_record = reader.readLine()) != null)
// System.out.println(next_record);
socket.close();
// System.out.println("Finished");
我錯過了什麼,我該如何解決?
EP,似乎有什麼東西什麼'Lambdas'不利於;-) – PeterMmm
@PeterMmm沒有,這個問題已經無關lambda表達式,我只是想保持代碼的乾淨和可讀性。 – tarrsalah
不知道:p,這就是我來這裏的原因。 – tarrsalah