网络编程
我爱袁婷
这个作者很懒,什么都没留下…
展开
-
I/O之BIO详解
简介传统的BIO编程网络编程的基本模型是C/S模型,即两个进程间的通信。服务端提供IP和监听端口,客户端通过连接操作想服务端监听的地址发起连接请求,通过三次握手连接,如果连接成功建立,双方就可以通过套接字进行通信。传统的同步阻塞模型开发中,ServerSocket负责绑定IP地址,启动监听端口;Socket负责发起连接操作。连接成功后,双方通过输入和输出流进行同步阻塞式通信。到底什么是“IO...原创 2019-01-20 19:29:50 · 925 阅读 · 0 评论 -
IO之NIO详解。
简介NIO的全称是New I/O,与之相对应的是Java中传统的I/O,这里都指的是Java的API包。传统的IO包提供的是同步阻塞IO,即当用户线程发出IO请求后,内核会去查看数据是否已经就绪,若未就绪,则用户线程会处于阻塞状态(让出CPU),当数据就绪后,内核会将数据复制到用户线程,并把结果返回给用户线程,同时接触用户线程的阻塞,同步体现在用户线程需要等待数据就绪后才能向后执行(后面的执行...原创 2019-01-20 20:02:33 · 211 阅读 · 0 评论 -
IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别
一、什么是socket?什么是I/O操作?我们都知道unix(like)世界里,一切皆文件,而文件是什么呢?文件就是一串二进制流而已,不管socket,还是FIFO、管道、终端,对我们来说,一切都是文件,一切都是流。在信息 交换的过程中,我们都是对这些流进行数据的收发操作,简称为I/O操作(input and output),往流中读出数据,系统调用read,写入数据,系统调用write。不过话...转载 2019-01-21 19:36:27 · 232 阅读 · 0 评论