New Input/Output(NIO)

NIO并不是简单地综合了同步阻塞IO、同步非阻塞IO和IO多路复用这些概念,而是提供了一套全新的API,这些API支持多种IO操作模式,包括但不限于上述三种。NIO的设计理念是提供更高效、更灵活的方式来进行网络通信和文件IO操作。

  • 同步阻塞IO:在NIO中,如果通道被配置为阻塞模式,那么它将表现得类似于传统的阻塞IO流,即在数据不可用时会阻塞线程。
  • 同步非阻塞IO:NIO的通道也可以配置为非阻塞模式,这意味着当数据不可用时,IO操作会立即返回,而不会阻塞线程。
  • IO多路复用:通过选择器(Selectors),NIO实现了IO多路复用,允许单个线程同时监视多个通道,从而管理多个并发的IO操作。

#question IO多路复用的基本概念
#question 文件描述符的基本概念

#question epoll监听列表为什么要使用红黑树 ?

#question 红黑树是什么?为什么交红黑树?他的基本结构是什么样的,有什么特点?

基于java的NIO技术学习理解IO多路复用技术

#question NIO中都使用了哪些设计模式?这些设计模式都是如何生效的,他们的作用是什么?

依赖于Reactor技术

Reactor技术依赖于事件驱动编程

IO多路复用技术使用了事件编程的思想,每一个连接或者请求过来,作为一个事件进行处理,时间接收器接收事件,事件调度器由哪个事件处理器进行处理,然后时间处理器处理具体的事件。
1、什么是事件?
2、什么可以作为事件?