一 NIO的概念
2024-08-25 16:29:58
Java NIO由下列几个核心部分组成:
- Channels(通道)
- Buffers(缓冲区)
- Asynchronous IO(异步IO)
Channel 和 Buffer
基本上所有的IO在NIO中都是从一个Channel开始,Channel有点像流。数据可以从Channel读到Buffer中,也可以从Buffer写到Channel中
Channel的实现类
- FileChannel
- DatagramChannel
- SocketChannel
- ServerSocketChannel
Buffer的实现
- ByteBuffer
- CharBuffer
- DoubleBuffer
- FloatBuffer
- IntBuffer
- LongBuffer
- ShortBuffer
Selector
Selector允许单线程处理多个Channel。如果你的应用打开了多个连接(通道),但每个连接的流量都很低,使用Selector就会很方便。
要使用Selector注册Channel,就得向Selector注册Channel,然后调用它的select()方法。这个方法会一直阻塞到某个注册的通道有事件就绪。一旦这个方法返回,线程就可以处理这些事件。
最新文章
- ip封包
- iframe高度自适应内容
- C语言范例学习02
- hdu 猜数字
- HDU 5877 Weak Pair(弱点对)
- Xilinx 网站资源导
- [HDU 1963] Investment
- 检测android的网络链接状态
- DotNetBar.Bar控制Y顺序控制方向
- Java 启动线程的方式
- Snuke's Subway Trip
- javascript 回调, 单线程执行
- String的split()方法可以将字符串按照特定的分隔符拆分成字符串数组
- 【洛谷P1659】啦啦队排练
- CF1045G:AI robots(CDQ分治)
- GIS中栅格数据结构的显示与计算
- KDD Cup 99网络入侵检测数据的分析
- MySQL 全局锁、表锁以及行锁
- Jfinal QuartzPlugin 简单使用案例
- FineBI表单如何更新