java nio(一)概述
来源:互联网 发布:重庆时时彩源码 编辑:程序博客网 时间:2024/06/05 07:15
nio是new IO的简称,是jdk1.4以后引入的api。传统IO是面向流的操作,是阻塞IO;而nio是面向缓冲的,是非阻塞IO。
nio主要由以下3个核心部分组成:buffer、channel、selector。
channel和buffer
channel看上去有点像流,但与流不同的是,channel是双向的,数据可以从channel读到buffer中,也可以从buffer写到channel中。而流只是在单方向移动(分为输入流和输出流)。channel和buffer均有多个实现类。
channel主要实现有:
- FileChannel
- DatagramChannel
- SocketChannel
- ServerSocketChannel
可以看到,这些channel涵盖了文件IO,UDP IO以及TCP IO。
buffer主要实现有:
- ByteBuffer
- CharBuffer
- ShortBuffer
- IntBuffer
- LongBuffer
- FloatBuffer
- DoubleBuffer
可以看到,nio为所有原始数据提供了buffer支持。
selector
selector允许单线程处理多个 channel。要使用selector,需要向selector注册channel,然后调用它的select()方法。
0 0
- java nio(一)概述
- Java NIO (一) 概述
- java NIO教程(一)--NIO概述
- (一)Java NIO概述
- Java NIO: NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Java NIO:NIO概述
- Linux软连接和硬链接
- tiny210移植mjpeg-streamer
- 如何为你的数据库事务日志减肥?
- docker这么火,我也想玩玩 centos6.5
- forbomb
- java nio(一)概述
- libevent2笔记(Timer和Http Client的应用和注意点)
- C++的强制类型转换
- oracle10g/11g 新特性三(Flashback Table)
- 数据库各个派系的起源和应用场景
- leetcode--Remove Linked List Elements
- 第三章第十八题sum
- Posts Tagged 【math】Valid Sudoku
- Fiddler中session的请求/响应类型与图标对照表