
---Nio+Netty---
文章平均质量分 85
csdn启程
开心每天
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Buffer类(最详细的解析)
Buffer 类是 java.nio 的构造基础。一个 Buffer 对象是固定数量的数据的容器,其作用是一个存储器,或者分段运输区,在这里,数据可被存储并在之后用于检索。缓冲区可以被写满或释放。对于每个非布尔原始数据类型都有一个缓冲区类,即 Buffer 的子类有:ByteBuffer、CharBuffer、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffe原创 2016-11-12 19:43:29 · 10012 阅读 · 0 评论 -
使用选择器
在详细了解 Selector API 之前,你需要知道一点和 Selector 内部工作原理相关的知识。就像在 NIO - 使用选择键 中]探讨的那样,选择器维护着注册过的通道的集合,并且这些注册关系中的任意一个都是封装在 SelectionKey 对象中的。每一个 Selector 对象维护三个键的集合: Java代码 public abstract class原创 2016-11-12 19:52:21 · 426 阅读 · 0 评论 -
使用选择键
◇ SelectionKey API 看看 SelectionKey 的相关 API 方法: Java代码 package java.nio.channels; public abstract class SelectionKey { public static final int OP_READ; public原创 2016-11-12 19:51:42 · 664 阅读 · 0 评论 -
选择器基础
◇ 选择器、可选择通道和选择键类 实际上,与选择器相关的类的 api 有三个,它们用于执行就绪选择: 选择器(Selector):选择器类管理着一个被注册的通道集合的信息和它们的就绪状态。通道是和选择器一起被注册的,并且使用选择器来更新通道的就绪状态。 可选择通道(SelectableChannel):它是所有支持就绪检查的通道类的父类。FileChan原创 2016-11-12 19:49:41 · 414 阅读 · 0 评论 -
Socket通道
socket 通道有三个类:SocketChannel、ServerSocketChannel 和 DatagramChannel。请注意:DatagramChannel 和 SocketChannel 实现定义读和写功能的接口,而 ServerSocketChannel 不实现。ServerSocketChannel 负责监听传入的连接和创建新的 SocketChannel对象,它本身从不传原创 2016-11-12 19:49:07 · 1974 阅读 · 0 评论 -
内存映射文件
内存映射文件一直没弄明白,这几天在网上到处搜索,看了两篇文章,总算是弄明白了。在讲内存映射文件前,先讲讲 MMU 和内存映射到底是是什么。 MMU 是 Memory Management Unit 的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟内存、物理内存的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权。原创 2016-11-12 19:48:31 · 474 阅读 · 0 评论 -
文件锁
在 JDK 1.4 版本之前,Java I/O 模型都未能提供文件锁定(file locking),缺少这一特性让人们很头疼。绝大多数现代操作系统早就有了文件锁定功能,而直到 JDK 1.4 版本发布时 Java 编程人员才可以使用文件锁(file lock)。 锁(lock)可以是共享的(shared)或独占的(exclusive)。这里描述的文件锁定特性在很大程度上依赖原创 2016-11-12 19:47:50 · 542 阅读 · 0 评论 -
FileChannel
对于文件 I/O,最强大之处在于异步 I/O(asynchronous I/O),它允许一个进程可以从操作系统请求一个或多个 I/O 操作而不必等待这些操作的完成。发起请求的进程之后会收到它请求的 I/O 操作已完成的通知。异步 I/O 是一种高级性能,当前的很多操作系统都还不具备。因此,文件通道在多数情况下来说总是阻塞式的,因此不能被置于非阻塞模式。 FileChanne原创 2016-11-12 19:47:02 · 1378 阅读 · 1 评论 -
Channel
首先,我们来更近距离地看一下基本的 Channel 接口。Channel 接口的完整源码: Java代码 package java.nio.channels; public interface Channel { public boolean isOpen(); public void close() throws IOE原创 2016-11-12 19:46:15 · 1208 阅读 · 0 评论 -
NIO浅析
Java NIO浅析NIO(Non-blocking I/O,在Java领域,也称为New I/O),是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到大型应用服务器,成为解决高并发与大量连接、I/O处理问题的有效方式。那么NIO的本质是什么样的呢?它是怎样与事件模型结合来解放线程、提高系统吞吐的呢?本文会从传统的阻塞I/O和线程池模型面临的问题讲起,然后对原创 2016-11-22 15:29:42 · 910 阅读 · 1 评论