阻塞与非阻塞个人小结.docVIP

  • 3
  • 0
  • 约3.39千字
  • 约 4页
  • 2017-06-08 发布于重庆
  • 举报
阻塞与非阻塞个人小结

阻塞与非阻塞个人小结 最近帮一哥们做一个简单的通信演示小程序,重拾遗忘很久的Windows网络编程,通过此次演示程序的制作,对于TCP的三路握手、Socket的运用理解更加深入了,同时从文字上的阻塞与非阻塞到情真意切的感受到二者之间的差异,闲暇之余,发现一本好书,书名好像叫“WIn32多线程”,书中用例与讲解很贴切。 下面对阻塞非阻塞做一小结,其中有部分内容参考于网络,也许只有亲身体验过的人才能感觉到这平白的总结中蕴含的种种细节与痛苦的实践。 1.connect函数响应中断返回后仍然回到函数的调用。 实践证明,对于一个非阻塞的socket,如果在调用connect函数时,如果发生中断,这函数响应中断,但当中断返回时,继续connect函数的调用,直到connect超时失败或接收到错误ICMP包或连接成功 2.accept 如果侦听进程是非阻塞模式工作,当调用accept 函数接收来自客户端的请求后,返回的socket套接字,默认为阻塞的工作模式。 一、阻塞模型 可能发生阻塞的套接口调用分为四种: 1 .输入操作:read、readv、recv、recvfrom和recvmsg函数 2 .输出操作:write、writev、send、sendto和sendmsg函数 3 .接收外来连接:accept 函数 4 .初始化外出的连接:connect 函数 二、I/O模型 1.

文档评论(0)

1亿VIP精品文档

相关文档