![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
I/O模型
xzengwei1313
懦夫畏死终须死,志士求仁几得仁!
展开
-
服务器端网络编程之I/O模型
基本概念:阻塞: 阻塞调用是指调用返回之前,当前线程会被挂起,只有当调用得到结果后才返回。 非阻塞:与阻塞相反,非阻塞调用是指在不能立即得到结果之前,该函数不会将当前线程阻塞,而是立即返回。 同步:所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。等前一件做完了才能做下一件事。 异步:异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这...转载 2019-08-04 13:58:50 · 369 阅读 · 0 评论 -
I/O模型与I/O多路复用之select、poll 和 epoll 的区别
1、对于多进程或多线程I/O同步与异步:针对多个事件(线程或进程)来说的。如果事件A需要等待事件B的完成才能完成,这种串行执行的机制称为同步。这是可靠的任务序列,要么都成功要么都失败。如果事件A的执行不需要事件B的完成结果,这种并行的执行机制称为异步。事件AB相互不知道对方是否完成,是不可靠的任务序列。2、对于单进程或单线程I/O阻塞与非阻塞:针对单一事件(线程或进程)来说的。阻塞:如...原创 2019-07-26 22:20:07 · 298 阅读 · 0 评论 -
I/O模型之BIO到NIO到select
socket:客户端请求与服务器端建立连接客户端通过socket发起连接请求,在服务器端由socket listen负责监听客户端请求,收到后通过bind和accept建立对应的通信套接字socket。(accept和read/write默认是会阻塞的)BIO(同步阻塞,单线程不并发,并发一定阻塞,多线程高并发但是有缺点):服务器需要监听端口号,客户端通过IP和端口与服务器建立TCP...原创 2019-08-01 21:12:20 · 161 阅读 · 0 评论