java NIO
咸鱼老罗
干活人
展开
-
NIO系列(三)——FileChannel文件通道
FileChannel 文件通道FileChannel,是堵塞的。作用是文件的连接和读取。 打开FileChannel FileChannel不能直接打开,我们可以使用RandomAccessFile、InputStream、OutputStream来获取FileChannel实例。下面是RandomAccessFile获取实例 RandomAccessFile aFile = new R原创 2017-06-23 17:20:37 · 667 阅读 · 0 评论 -
NIO系列(四)——socket通道和serversocket通道
SocketChannel SocketChannel是一个连接到tcp网络套接字的通道。可以通过以下2中方式创建 1.打开一个SocketChannel并连接到互联网上的某台服务器。 SocketChannel client = SocketChannel.open(new InetSocketAddress("127.0.0.1",10699)); 2.ServerSocketChan原创 2017-06-23 17:36:08 · 1518 阅读 · 0 评论 -
NIO系列(五)——Udp协议(DatagramChannel)
DatagramChannel DatagramChannel是收发UDP包的通道,与TCP协议不同,UDP发送不进行连接,也不对确认数据是否收到。 打开DatagramChannel DatagramChannel server = DatagramChannel.open(); server.socket().bind(newInetSocketAddress(10086)); 此例子原创 2017-06-23 17:39:15 · 1711 阅读 · 0 评论 -
NIO系列(六)——线程通信(pipe)
Pipe Pipe用于线程之间的数据传输。Pipe有两个嵌套类(内部类)SinkChannel和SourceChannel,数据写入到SinkChannel,数据从SourceChannel读取。 创建Pipe 通过Pipe.open()来创建管道 Pipe pipe = Pipe.open(); 向管道写入数据 创建SinkChannel对象 Pipe.SinkChannel si原创 2017-06-23 17:44:38 · 832 阅读 · 0 评论 -
NIO系列(一)——介绍和Buffer缓冲区
NIO简介 NIO是java1.4开始的替换IO的API,它相对于IO的特点是 1.通道(Channel)和缓冲区(buffer) 2.非阻塞 3.选择器 通过非阻塞,线程将数据读到缓存区,是非阻塞异步的。 通过选择器,可以使多个通道在一个线程执行。 通道(Channel)和缓冲区(buffer) 通过channel连接文件、tcp、udp终端,通过buffer拿到数据 通道可以原创 2017-06-09 17:56:42 · 1171 阅读 · 0 评论 -
NIO系列(二)——Channel通道复制和Selector选择器
Channel通道 NIO通过通道来读写数据 Channel有以下实现类 FileChannel:文件读写通道。 DatagramChannel:通过UDP读写网络中的数据。 SocketChannel:通过TCP读写网络中的数据。 ServerSocketChannel:监听新进来的TCP连接,对每个新进来的连接都会创建一个SocketChannel。 Channel读取数据的方式原创 2017-06-23 17:01:52 · 1915 阅读 · 0 评论