NIO
文章平均质量分 90
yjaspire
这个作者很懒,什么都没留下…
展开
-
java Nio(一)之缓冲区
java Niojava Nio全称java non-blocking IO,是指jdk1.4 及以上版本里提供的新api(New IO) ,为所有的原始类型(Boolean类型除外)提供缓存支持的数据容器,使用它可以提供非阻塞式的高伸缩性网络。下表总结了Java IO和NIO之间的主要区别:IONIO面向流面向缓冲阻塞IO非阻塞IO无选择器缓冲区 @Test public void test0...原创 2018-05-28 08:23:33 · 279 阅读 · 0 评论 -
java NIO(二)之通道
一、通道(Channel):用于源节点与目标节点的连接。在 Java NIO 中负责缓冲区中数据的传输。Channel 本身不存储数据,因此需要配合缓冲区进行传输。 二、通道的主要实现类 java.nio.channels.Channel 接口: |--FileChannel:用于读取、写入、映射和操作文件的通道。 |--SocketChannel:通过 UDP 读写网络中的数据通道。...原创 2018-05-29 08:23:22 · 616 阅读 · 0 评论 -
java Nio之Netty框架
Netty是一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。Netty是一个NIO客户端、服务端框架。允许快速简单的开发网络应用程序。例如:服务端和客户端之间的协议。它最牛逼的地方在于简化了网络编程规范。例如:TCP和UDP的Socket服务。Netty官网:http://netty.io/通俗点理解:Netty本...转载 2018-06-05 08:22:40 · 324 阅读 · 0 评论 -
java NIO(三)之阻塞与非阻塞
阻塞与非阻塞阻塞 传统的 IO 流都是阻塞式的。也就是说,当一个线程调用 read() 或 write()时,该线程被阻塞,直到有一些数据被读取或写入,该线程在此期间不能执行其他任务。因此,在完成网络通信进行 IO 操作时,由于线程会阻塞,所以服务器端必须为每个客户端都提供一个独立的线程...原创 2018-05-31 08:16:58 · 6968 阅读 · 0 评论