【从入门到放弃-Java】并发编程-NIO使用
前言
上文【从入门到放弃-SpringBoot】SpringBoot源码分析-请求过程中我们了解到,tomcat接收、返回请求的过程都是基于NIO实现的。日常工作中有很多基于NIO的使用,我们知道NIO可以提高系统的并发度,接下来的系列我们来深入学习下NIO,本文先从使用上简单概述。
NIO概述
NIO即non-blocking(New IO),是指jdk1.4 及以上版本里提供的新api。
NIO和IO最大的区别:IO是以流的方式处理数据,而NIO是以块的方式处理数据;IO对事件的处理是阻塞的,NIO是非阻塞的
NIO的核心部分:
- Channel
- Buffer
- Selector
NIO主要分为标准输入输出和网络请求
标准输入输出NIO
读取
private static void readNio() {
try {
//1、开启