Java NIO简单例子
来源:互联网 发布:阿里云smtp服务器地址 编辑:程序博客网 时间:2024/05/17 18:13
例子如下:
Selector selector;try { selector = Selector.open(); SocketChannel socketChannel = SocketChannel .open(new InetSocketAddress("192.168.91.109", 4321)); socketChannel.configureBlocking(false); socketChannel.register(selector, SelectionKey.OP_READ | SelectionKey.OP_WRITE); while (selector.select() > 0) { Set<SelectionKey> set = selector.selectedKeys(); for (SelectionKey sk : set) { SocketChannel sc = (SocketChannel) sk.channel(); if (sk.isReadable()) { Log.i("MainActivity", "channel is readable"); } if (sk.isWritable()) { Log.i("MainActivity", "channel is writable"); } } }} catch (IOException e) { e.printStackTrace();}
对于客户端而言,socket链接通常只有一个,一般Selector的select方法循环用在读线程里面,当select方法返回时,就去read,然后处理。而写操作单独用在另外一个线程里面操作,并且是不需要进行select的,拿到数据就写入socket,因为write方法是阻塞的,write方法返回就说明socket是可以写的。
0 0
- Java NIO 简单例子
- Java Nio简单例子
- Java NIO简单例子
- JAVA NIO 服务器端简单实现例子
- NIO 简单交互例子
- NIO的简单例子
- Java NIO例子——MINA的最简单模型
- Java nio一个简单例子和画出之间通讯简图
- java nio 使用例子
- Java nio几个例子
- JAVA NIO例子
- Java NIO例子
- java的nio例子
- Java.NIO小例子
- JAVA NIO 例子
- NIO 使用的简单例子
- java非阻塞nio例子
- JAVA NIO 概述及例子
- 观察者模式
- 链式线性表的c++实现
- vc++6.0调试mex文件
- 使用TRY/CATCH 格式
- POJ - 3461 Oulipo(KMP模板题)
- Java NIO简单例子
- Android应用内存泄露分析
- 黑马程序员--OC-关键字
- Android UI 模仿界面框架系列第二章:QQ 聊天界面开发和及时通讯功能开发
- cookie 与session 区别和联系
- Mysql Fabric实现学习笔记
- HDU2680 Choose the best route 最短路
- appframework 左侧和右侧点击滑动显示
- 第28天【健身】