NIO
大树叶
宠辱不惊,看庭前花开花落;去留无意,望天空云卷云舒。
展开
-
LINUX 环境下 NIO MMAP和DirectMem性能的比较
在win7 HP笔记本上测试。 结论:directmem 跟MMAP基本差不多, 另外,int BUFFER_SIZE = 1024的大小对性能影响不大。 代码如下: import java.util.*; import java.nio.channels.*; import java.io.*; import java.io.*; import java.ni原创 2016-03-10 21:43:28 · 1122 阅读 · 0 评论 -
NIO Selector
Selector Selector允许单线程处理多个Channel,能够检测一到多个Channel,并能够知晓通道是否为诸如读写事件做好准备。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。 如果你的应用打开了多个连接(通道),但每个连接的流量都很低,使用Selector就会很方便。例如,在一个聊天服务器中。 这是在一个单线程中使用一个Selector处理3个Cha转载 2016-05-03 13:50:30 · 470 阅读 · 0 评论 -
SocketChannel API用法
java.nio.channels 类 SocketChannel java.lang.Object java.nio.channels.spi.AbstractInterruptibleChannel java.nio.channels.SelectableChannel java.nio.channels.spi.AbstractSelectableCh原创 2016-05-03 11:45:48 · 3143 阅读 · 0 评论 -
ServerSocketChannel API用法
java.nio.channels 类 ServerSocketChannel java.lang.Object java.nio.channels.spi.AbstractInterruptibleChannel java.nio.channels.SelectableChannel java.nio.channels.spi.AbstractSelect转载 2016-05-03 11:43:16 · 803 阅读 · 0 评论 -
Selector API用法
java.nio.channels 类 Selector java.lang.Object java.nio.channels.Selector 直接已知子类: AbstractSelector public abstract class Selectorextends Object SelectableChannel 对象的多路复用器。 可通过调用此类的 o转载 2016-05-03 11:40:15 · 1826 阅读 · 0 评论 -
SelectionKey API用法
java.nio.channels 类 SelectionKey java.lang.Object java.nio.channels.SelectionKey 直接已知子类: AbstractSelectionKey public abstract class SelectionKeyextends Object 表示 SelectableChannel 在 S转载 2016-05-03 11:35:55 · 3849 阅读 · 0 评论 -
JAVA: Socket和ServerSocket网络编程
面是本次学习的笔记。主要分异常类型、交互原理、Socket、ServerSocket、多线程这几个方面阐述。 异常类型 在了解Socket的内容之前,先要了解一下涉及到的一些异常类型。以下四种类型都是继承于IOException,所以很多之后直接弹出IOException即可。 UnkownHostException: 主机名字或IP错误 ConnectExceptio转载 2016-05-03 10:22:32 · 486 阅读 · 0 评论 -
JAVA BIO NIO AIO 意思和区别
在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解。具体如下: 序号 问题 1 什么是同步? 2 什么是异步? 3 什么是阻塞? 4 什么是非阻塞? 5 什么是同步阻塞? 6 什么是同步非阻塞? 7 什么是异步阻塞? 8 什么是异步非阻塞? 散仙转载 2016-03-14 22:50:34 · 811 阅读 · 0 评论 -
BIO, NIO和 AIO的代码例子
在BIO阻塞模式下server端: 1 new ServerSocket(int port) 监听端口 2 serverSocket.accept() 阻塞式等待客户端的连接,有连接才返回Socket对象 3 socket.getINputStream() 获取客户端发过来的信息流 4 socket.getOutputStream() 获取输出流对象,从而写入数据返回客户端 clie原创 2016-03-16 17:27:05 · 710 阅读 · 0 评论 -
Java 并发工具包 java.util.concurrent 大全
1. java.util.concurrent - Java 并发工具包 Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。 本文我将带你一一认识 java.util.concurrent 包里的这些类,然后你可以尝试着如何转载 2016-05-03 13:54:43 · 964 阅读 · 0 评论