面经·Java·(B)IO/NIO/AIO

本文介绍了Java中的IO、NIO和AIO概念,重点讲解了NIO的非阻塞特性、Channel和Buffer的使用,以及Selector在多路复用中的作用。NIO的核心是IO线程池,通过Selector避免了传统IO的阻塞问题和非阻塞IO的盲目重试,实现了更高效的资源利用。
摘要由CSDN通过智能技术生成

Java中高手加QQ群498238384 备注:Java中高手- 呢称

 

如果对您有帮助,麻烦在右边点个赞哦~~

 

  • 什么是IO、NIO、AIO?
  • 讲一讲Channel 和 Buffer
  • 讲一讲selector
  • directBuffer和buffer的区别

 

 

  • 什么是IO、NIO、AIO?
    • NIO 指新IO,核心是非阻塞,解决传统IO的阻塞问题。操作对象是Buffer

      • 其实NIO的核心是IO线程池,一定要记住这个关键点。

      • NIO中的IO多路复用调用系统级别的select和poll模型,由系统进行监控IO状态,避免用户线程通过反复尝试的方式查询状态

    • AIO即Asynchronous I/O(异步非阻塞 I/O),这是Java 1.7引入的NIO 2.0中用到的。

  • 讲一讲Channel 
    • 一个Channel(通道)代表和某一实体的连接,这个实体可以是文件、网络套接字等。既可以读又可以写。而流是单向的。

    •  

      •  
  • 讲一讲selector
    • Selector 为Channel服务,Channel为要访问的数据服务。

    • selector采集各个channel的状态(或者说监听事件:

      • Accept:有可以接受的连接
      • Connect:连接成功
      • Read&#x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值