socket的getInputStream()用来接收响应,有响应时不再阻塞,可以inputStream可以read。socket的setSoTimeout()设置响应超时时间,不是read的时间,而是没有byte可以read的时间,超过这个时间则报socket time out。
setSoLinger(boolean 调用socket的close()方法后,是否立刻断开连接, int 如果不是立刻断开连接,延长多长时间后断开连接);
默认为(false, 0),即调用socket的close()方法后,等数据接收结束后再断开连接。