修改TCP回射客户程序,在跟服务器建立连接后发送一个RST。这种情况可以如下模拟:

一旦建立连接,设置SO_LINGER选项,把l_onoff标志置为1,l_linger时间置为0。在关闭连接时,TCP套接口会发送一个RST

服务器端select向服务器进程返回可读,但服务器要在一段时间后才能调用accpet,在服务器从select返回和调用accept之间,收到来看客户端的RST,这个已完成的连接从队列中删除(假设没有在其它已完成的连接存在),服务器调用 accept,但是由于没有已完成的连接,就阻塞了

解决方法 :

如果用select来获知何时有连接已经就绪可以accept时,总是将监听套接口置为非阻塞,并且在后面的accept调用中忽略EWOULDBLOCK和ECONNABORTED、EPROTO、EINTR

网络编程学习笔记(非阻塞accept)相关推荐

  1. 网络编程学习笔记(非阻塞读和写)

    维护两个缓冲区:to容纳从标准输入到服务器的数据,from容纳从服务器到标准输出的数据 toiptr指向从标准输入读入的数据可以存放的下一个字节,tooptr指下一个必须写入到套接口的字节.有(toi ...

  2. 网络编程学习笔记(非阻塞connect)

    设置非阻塞,如果返回EINPROGRESS,表示正在建立连接,还没有完成 非阻塞的三个用途: 1.我们可以在三路握手的同时做其它的处理.connect要花一个往返时间完成,而且可以是在任何地主,从几个 ...

  3. 15Java网络编程学习笔记

    Java网络编程学习笔记 文章目录 1 网络基础 1.1 网络通信 1.2 网络 1.3 IP地址 1.5 域名 1.6 端口号 1.7 网络通信协议 1.8 TCP协议 1.9 UDP协议 2 In ...

  4. java 网络编程学习笔记

    java 网络编程学习笔记 C/S模式:客户端和服务器 客户端创建流程 1 1.建立Socket端点 2 3 Socket s = new Socket(绑定地址, 绑定端口); 2.确认源数据方式和 ...

  5. unix网络编程 str_cli epoll 非阻塞版本

    unix网络编程 str_cli epoll 非阻塞版本 unix网络编程str_cli使用epoll实现讲了使用epoll配合阻塞io来实现str_cli,这个版本是配合非阻塞io. 可以看到采用非 ...

  6. [Linux网络编程学习笔记]索引

    一.Linux基本知识 [学习笔记]Linux平台的文件I/O操作 [学习笔记]Linux平台的文件,目录及操作 [Linux学习笔记]标准输入输出 [Linux学习笔记]进程概念及控制 [Linux ...

  7. 编程开发:Linux网络编程学习笔记

    非常全面.通俗易懂.值得借鉴的Linux网络编程学习笔记.关键字:linux linux编程 网络编程 linux网络编程 下载地址:点我下载 特别说明:本资源收集于网络,版权归原作者及版权商所有,仅 ...

  8. python网络编程学习笔记(二)

    python网络编程学习(四) 多用途客户端协议 一.ftp 功能:上传下载文件,删除命名文件,建立删除目录,自动压缩,保存目录 1.代码: #coding=utf-8 '''连接远程ftp服务器,显 ...

  9. Linux网络编程学习笔记(TCP)

    文章目录 1 字节序 1.1 定义 1.2 字节序转换函数 2 Socket地址 2.1 通用socket地址(实际开发不使用) 2.2 专用socket地址 2 IP地址转换 3 TCP通信流程 3 ...

最新文章

  1. tomcat实现session集群及tomcat+memcached共享session存储(四)
  2. td不允许自己扩展_一定要抱着大A不放手吗?
  3. caffe模型文件解析_深度学习 Caffe 初始化流程理解(数据流建立)
  4. 看完后,别再说自己不懂用户画像了
  5. PL/SQL NOCOPY限制模式
  6. 【实践驱动开发2-001】wifi 在android 下的实现 - AR6000 系列移植详细步骤
  7. 5导出word_重磅更新 !支持题库导出为word
  8. XOOPS模块开发快速入门中文翻译(二)
  9. Java中的接口与抽象类的区别
  10. 不同语言Sql Server的库交换出现乱码
  11. 数据挖掘导论完整版pdf中文
  12. 电子设计教程22:虚短与虚断
  13. javascript简单介绍总结(二)
  14. 100以内的勾股数python_常见100以内勾股数
  15. DeepCross(DCN)模型及torch实现
  16. Spring框架总结(8)
  17. Files的常用方法都有哪些?
  18. 店铺管理系统是智商税还是真有用?我们替你实测了最火的五个软件!市面上最火的五款店铺管理系统大测评!
  19. python rot13_PHP str_rot13() 函数
  20. 解密回声消除技术--转

热门文章

  1. 第08次:升级《陋习手记》完善主从UI
  2. Identity 验证,Authorize 特性
  3. python源代码-python源码
  4. 用python绘制柱状图标题-如何用Python绘制3D柱形图
  5. python自学网站有哪些-Python自学之路-前期准备
  6. python就业方向哪个好-学习python就业方向都有哪些?
  7. python课程将主要介绍哪些内容-Python窗口的基本介绍
  8. python入门有基础-Python基础知识入门,这三个原则是你要知道的,还有教程
  9. python爬虫能赚钱吗-在校大学生用python当爬虫一个月能赚3000吗?
  10. qpython手机版-qpythonl app下载