文章分类 -  Socket通信

BIO、NIO、AIO
摘要:前言 从JDK 7版本开始,Java新加入的文件和网络io特性称为nio2(new io 2, 因为jdk1.4中已经有过一个nio了),包含了众多性能和功能上的改进,其中最重要的部分,就是对异步io的支持,称为Java AIO(asynchronous IO)。因为AIO的实施需充分调用OS参与, 阅读全文

posted @ 2017-05-01 16:03 老曹123 阅读(127) 评论(0) 推荐(0)

NIO--同步非阻塞(3)
摘要:感性认识: 传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大。使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数量线程的线程池,甚至一个线程来为任意数量的连接服务。由于线程数量小于连接数量,所以每个线 阅读全文

posted @ 2017-04-30 01:00 老曹123 阅读(199) 评论(0) 推荐(0)

BIO的升级---同步阻塞模式(2)
摘要://sever端 public class Server { final static int PORT = 8765; public static void main(String[] args) { ServerSocket server = null; BufferedReader in = null; PrintWrit... 阅读全文

posted @ 2017-04-23 23:57 老曹123 阅读(121) 评论(0) 推荐(0)

古老的BIO---同步阻塞模式(1)
摘要:IO通信中何为阻塞、非阻塞,同步、异步? 阻塞:应用程序获取网络数据,需等待网络传输。 非阻塞:直接获得已准备就绪的数据,无需等待。 同步和异步分别指的是应用程序层面和操作系统层面对数据读取的方式。同步:应用程序直接参与数据的读写,阻塞到某个方法,直到数据准备就绪或轮训的方式检查数据准备状态,准备就 阅读全文

posted @ 2017-04-23 23:19 老曹123 阅读(870) 评论(0) 推荐(0)

导航