传统阻塞io模型

代码:
public class BioServerSocket {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(6666);
ExecutorService executorService = Executors.newFixedThreadPool(10);
System.out.println("1.启动服务");
while (true) {
// 监听客户端连接
System.out.println("2.等待连接...");
Socket socket = serverSocket.accept();
executorService.execute(new Runnable() {
@Override
public void run() {
try {
System.out.println("建立连接,开启线程处理socket...");
handle(socket);
} catch (IOException e) {
e.printStackTrace();
}
}
});
}
}
private static void handle(Socket socket) throws IOException {
try {
InputStream inputStream = socket.getInputStream();
byte[] bytes = new byte[1024];
while (true) {
int read = inputStream.read(bytes);
if (read != -1) {
System.out.print(new String(bytes, 0, read));
} else {
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
socket.close();
}
}
}
windows下验证:
windows开启telnet命令


telnet为黑框,不显示输入的字符串

传统阻塞IO模型及Windows验证
141

被折叠的 条评论
为什么被折叠?



