title: Setting a time-out limit to readLine()?
body: <p>I have the following code that reads response from a POP server through Sockets in Java. But the problem is sometimes, when I use the readLine() function to read from the server and if the server does not reply with any response, my application will hang there, waiting for a response from the server.</p>
  
  <pre><code>socket.connect(new InetSocketAddress("pop.server.com", 110), 3000);
  input = socket.getInputStream();
  BufferedReader incoming = new BufferedReader(new InputStreamReader(input));
  incoming.readLine();   //This line will cause my application to hang if the server does not respond with a reply
  </code></pre>
  
  <p>Is there a way to set a timeout or some other ways that when the server does not reply after a certain amount of time, the application should stop waiting for a response and continue its other execution?</p>