网络编程学习笔记(非阻塞connect)
2014-11-06 23:35
267 查看
设置非阻塞,如果返回EINPROGRESS,表示正在建立连接,还没有完成
非阻塞的三个用途:
1、我们可以在三路握手的同时做其它的处理。connect要花一个往返时间完成,而且可以是在任何地主,从几个毫秒的局域网到几百毫秒或几秒的广域网,在这段时间内我们可能有一些其他的处理想要执行
2、可以用这种技术同时建立多个连接。这在web浏览器中很普遍
3、由于我们用select等待连接的完成,因此可以给select设置一个时间限制,从而缩短connect的超时时间。在多数实现中,connect的超时时间在75秒到几分钟之间。有时应用程序想要一个更短的超时时间,使用非阻塞connect就是一种方法。
有一些细节要处理:
1、即使套接口是非阻塞的,如果连接的服务器在同一台主机上,在调用connect时连接通常立即建立
2、有两条与select和非阻塞I/O相关的规则:(1)当连接成功建立时,描述字变成可写;(2)当连接建立出错时,描述字既可读又可写
非阻塞的三个用途:
1、我们可以在三路握手的同时做其它的处理。connect要花一个往返时间完成,而且可以是在任何地主,从几个毫秒的局域网到几百毫秒或几秒的广域网,在这段时间内我们可能有一些其他的处理想要执行
2、可以用这种技术同时建立多个连接。这在web浏览器中很普遍
3、由于我们用select等待连接的完成,因此可以给select设置一个时间限制,从而缩短connect的超时时间。在多数实现中,connect的超时时间在75秒到几分钟之间。有时应用程序想要一个更短的超时时间,使用非阻塞connect就是一种方法。
有一些细节要处理:
1、即使套接口是非阻塞的,如果连接的服务器在同一台主机上,在调用connect时连接通常立即建立
2、有两条与select和非阻塞I/O相关的规则:(1)当连接成功建立时,描述字变成可写;(2)当连接建立出错时,描述字既可读又可写
相关文章推荐
- Java网络编程学习笔记(4)非阻塞通信
- 网络编程学习笔记(非阻塞accept)
- Java 网络编程 TCP vs UDP -Java学习笔记(31)
- Java学习笔记(七、网络编程基础)
- Java学习笔记之网络编程基础-通过URLConnection获取HTML页面
- 孙鑫VC学习笔记:第十四讲 网络编程
- 学习笔记--网络编程
- 孙鑫VC学习笔记:第十四讲 (二) 网络编程
- UNIX环境高级编程学习之第十六章网络IPC:套接字 - 非阻塞的Socket通信Select模型(多路复用), 实用Socket通信模板。
- Java学习笔记之网络编程基础-根据域名自动到DNS上获取IP地址
- [Linux网络编程学习笔记]管道的创建和使用
- 《Web Service 编程 --用C#.NET 开发网络服务》北京希望出版社 我的学习笔记(第二章)(也就是书上抄了一写东西而已)
- 《Web Service 编程 --用C#.NET 开发网络服务》北京希望出版社 我的学习笔记(第一章)(也就是书上抄了一写东西而已)
- UNIX环境高级编程学习之第十六章网络IPC:套接字 - 非阻塞的Socket通信Poll模型(多路复用), 实用Socket通信模板
- Java网络编程---I/O部分学习笔记整理
- 网络编程学习笔记
- java NIO非阻塞式IO网络编程学习笔记(一)
- Java 网络编程 学习笔记一 基础知识
- [零散篇]Java学习笔记---Java的Socket网络编程以及多线程
- Java学习笔记之网络编程基础-通过URL获取网络图片