Socket, BufferedReader hangs at readLine()

后端 未结 4 1203
广开言路
广开言路 2020-12-08 07:52

I have a server which initially does this:-

BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
for (;;) {
  String cmdLine =          


        
4条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2020-12-08 08:39

    eee's solution works perfectly. I was trying to read output from an SMTP conversation but it would block on:

    while ((response = br.readLine()) != null) {
        ...Do Stuff
    }
    

    Changing to:

    while (br.ready()) {
        response = br.readLine();
        ...Do Stuff
    }
    

    I can read everything just fine. br is a BufferedReader object, BTW.

提交回复
热议问题