I/O

java I/O 模型简述

安稳与你 提交于 2019-12-07 20:57:39
同步与异步&阻塞与非阻塞 五大I/O模型详解 java I/O模型简述 概述 从同步与异步&阻塞与非阻塞的概念,到具体的I/O模型,再到具体的Java语言实现,都是层层递进,本篇就从Java语言来看I/O模型的大概情况。 整个Java I/O模型,大致可以分为三类 BIO:JDK1.4之前的阻塞IO NIO:JDK1.4及以后的版本非阻塞IO AIO:JDK1.7之后,又叫NIO.2 一、BIO阻塞IO 1、基本概念 BIO,即为Blocking I/O,阻塞IO,大致流程为: 1、服务端建立ServerSocket,以一个端口启动 2、等待客户端建立socket连接,如果没有连接,一直阻塞 3、一个socket建立连接之后,从线程池中去一个线程取处理socket 2、代码分析 public class BlockingIOServer { public static void main(String[] args) throws IOException { int port = 10000; ExecutorService threadPool = Executors.newFixedThreadPool(10); ServerSocket server = new ServerSocket(port); while(true){ Socket client = server