TCP协议相关属性设置-FIONBIO属性
2014-04-14 15:31
162 查看
TCP协议相关属性设置-FIONBIO属性
此属性的作用是“允许或者禁止套接字的非阻塞模式”。
如果某个套接字的FIONBIO属性设置为true那么被意味着将此套接字设置为非阻塞模式,反之则为阻塞模式。
对于设置为非阻塞模式的套接字意味着我们在调用connect、recv等等函数的时候一般都会返回一次错误,通过对此错误的判断,我们可以进行后续处理。
Delphi和C++的设置方法为:
http://web1344759.web186.badudns.cc/showHtec.asp?id=216
以上代码的解释:
在上面的函数中,我们首先设置了套接字fd为非阻塞模式,然后调用connect函数进行连接,这时由于我们设置了非阻塞模式,函数connect会马上出错,并且错误为WSAEWOULDBLOCK,然后我们使用Select函数设置超时时间为iTimeOut秒。这样当在iTimeOut秒之内连接成功时会返回true否则则返回false。这样我们就实现了连接超时的功能。
此属性的作用是“允许或者禁止套接字的非阻塞模式”。
如果某个套接字的FIONBIO属性设置为true那么被意味着将此套接字设置为非阻塞模式,反之则为阻塞模式。
对于设置为非阻塞模式的套接字意味着我们在调用connect、recv等等函数的时候一般都会返回一次错误,通过对此错误的判断,我们可以进行后续处理。
Delphi和C++的设置方法为:
http://web1344759.web186.badudns.cc/showHtec.asp?id=216
以上代码的解释:
在上面的函数中,我们首先设置了套接字fd为非阻塞模式,然后调用connect函数进行连接,这时由于我们设置了非阻塞模式,函数connect会马上出错,并且错误为WSAEWOULDBLOCK,然后我们使用Select函数设置超时时间为iTimeOut秒。这样当在iTimeOut秒之内连接成功时会返回true否则则返回false。这样我们就实现了连接超时的功能。
相关文章推荐
- TCP协议相关属性设置-FIONBIO属性
- UITableView 相关属性的设置
- CSS学习(4)--CSS的盒状模型及相关属性设置
- ListView 相关属性设置
- 设置导航栏的相关属性
- HTML基础学习-16-text文本相关属性设置
- iOS开发笔记-UIActionSheet的相关属性设置
- iOS开发笔记--UILabel的相关属性设置
- 关于android view属性的归属以及如何在代码中设置相关属性总结
- 将ColumnFooter显示出来,并对相关属性做适当设置。 SetAggregationType接口可以帮助你方便的完成求和需求。
- jqueryeasyui动态生成分页的相关属性设置datagrid
- elasticsearch 建立索引以及设置相关 field属性
- 2016-06-17 nui构件隐藏时相关属性的设置 bug命名【彩虹】
- iOS开发笔记--UILabel的相关属性设置
- UILabel的相关属性设置
- iOS开发笔记--UILabel的相关属性设置
- aspxGridView 相关属性设置
- UITableView 表视图 代码设置相关属性
- 动态创建表格及设置的相关属性
- iOS开发笔记--UILabel的相关属性设置