文档章节

NIO学习笔记

younchen
 younchen
发布于 2015/10/19 14:00
字数 258
阅读 47
收藏 3

ByteBuffer 和其他的Buffer,如chatBuffer,DoubleBuffer一样都是Buffer的子类,ByteBuffer只有一个指针position用于处理读写操作,读取的内容为 position和limit之间的内容,ByteBuffer的flip() 方法使position置0,limit设置为position 的位置,capacity是Buffer的上限,也就是申请大小的时候那个参数。一旦分配大小不变。(netty中的ByteBuf中有俩个标记指针,一个是readerindex,另一个是writeindex),compat用于释放已读区域?待验证。


Chanel 是同道,与流的区别主要是Chanel是双向的,而流是单向的。channel同时支持读写。

Selector 是多路复用器, 可以轮询注册在其上的Channel,当被轮询到的Channel处于就绪时可以进行操作,遍历SelectKey可以遍历Channel集合,与传统的IO 服务端客户端模型不同, 用NIO一个线程用于轮询Selector即可完成对多个连接的请求处理,前者一个线程维护一个请求。


    

© 著作权归作者所有

共有 人打赏支持
younchen
粉丝 8
博文 94
码字总数 29970
作品 0
延吉
程序员
私信 提问
Java NIO ByteBuffer学习

深入理解Apache Mina (6)---- Java Nio ByteBuffer与Mina ByteBuffer的区别 http://chinaestone.iteye.com/blog/468138 DirectBuffer及内存泄漏 http://blog.csdn.net/zhouhl_cn/article/d......

mj4738
2012/10/15
0
0
Netty5入门学习笔记001

Netty官网:http://netty.io/ 本例程使用最新的netty5.x版本编写 服务器端: TimeServer 时间服务器 服务端接收客户端的连接请求和查询当前时间的指令,判断指令正确后响应返回当前服务器的校...

山东-小木
2014/12/17
0
10
JAVA NIO编程入门(一)

JAVA NIO编程入门(一) 一、前言 笔者之前接触的NIO编程比较少,所以对这一块的基础也比较弱,NIO作为java编程中一个重要的模块,不能很好的掌握它,感觉自己在java方面就掌握的不够,所以,...

木木匠
09/01
0
0
NIO学习笔记

NIO 操作系统背景知识 unix提供了5中io模型,其中java的底层实现依赖的是操作系统的io复用模型。linux提供select/poll,进程通过将一个或多个fd(文件描述符)传递给select或者poll,阻塞在sel...

肥肥小浣熊
2017/11/10
0
0
Netty学习笔记之Netty之初印象(一)

netty的知识点 NIO Reactor Pattern 反应器模式 Handler机制 Async blocking IO model 异步阻塞IO模型 TCP/UDP/HTTP等协议 ... ----------------- IO多路复用技术 Java NIO的Selector即基于e...

语博兄
2016/08/18
24
0

没有更多内容

加载失败,请刷新页面

加载更多

设计模式之单例模式

单例模式核心:保证一个类只有一个对象 单例模式分为五种:懒汉式、饿汉式、双重检测锁式、静态内部类式、枚举式 五种模式的特点:懒汉式---线程安全,调用效率高,不能延时加载 饿汉式---线...

森林之下
今天
2
0
markdown语法

这篇博客是本人在使用markdown语法过程中,用于记录一些自己总是会忘记的语法,并且会持续更新; 如何增加批注/备注:>; 这是一条备注/引言 如何手动换行,行末两次空格;

BlackCanary
今天
3
0
redis 设置外网可访问

前提是你已经把redis的端口放到了防火墙计划中,  /sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT /etc/rc.d/init.d/iptables save 更改redis.conf 文件 bind 127.0.0.1prot...

时刻在奔跑
今天
2
0
css3隐藏滚动条

chrome 和Safari .element::-webkit-scrollbar { width: 0 } IE 10+ .element { -ms-overflow-style: none; } Firefox .element { overflow: -moz-scrollbars-none; } firefox这个没试过~啦啦......

呵呵闯
今天
3
0
Poco官方PPT_020-ErrorHandlingAndDebugging双语对照翻译

因工作需要用到这一块的功能,所以直接翻译了一下 此PPT来源于官方文件,地址https://pocoproject.org/documentation.html

CHONGCHEN
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部