一些概念
阻塞和非阻塞
参照数据有没有准备好这一动作来讲
阻塞:如果数据没有准备好,程序就会处理一个阻塞状态,不会继续往下执行
非阻塞:无论数据是否准备好,程序都会往下执行
同步和异步
参照时间,在同一时间点或同一时间段内,能不能同时完成多个任务,或同时做多件事
同步:在同一时间点或同一时间段内,程序只能做一件事
异步:在同一时间点或同一时间段内,程序可以做多件事
NIO 同步非阻塞
AIO 异步非阻塞
BIO 同步阻塞
NIO特点
轮询
多路复用
缓冲区