博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
seleect io模型的select操作封装
阅读量:6443 次
发布时间:2019-06-23

本文共 729 字,大约阅读时间需要 2 分钟。

hot3.png

#pragma once  /************************************************************************//*   seleect io模型的select操作封装 *//************************************************************************/ class Selector{public:	Selector(void){reset();};	~Selector(void){} 	inline void reset()	{		FD_ZERO(&fdSocket);	} 	inline void add_sock(SOCKET s)	{		FD_SET(s, &fdSocket);	}; 	inline int test_sock(SOCKET s)	{		return FD_ISSET( s , &fdSocket);	} 	int select(int timeout=10)	{		struct timeval tv = {0, timeout}; //超时定义,10毫秒 		int nRet = ::select(0, &fdSocket, NULL, NULL, &tv);		//if (nRet==0) //超时		//if( nRet==SOCKET_ERROR )  // 出错 		return nRet;	} private: 	fd_set fdSocket;	  };

具体使用可以参考

转载于:https://my.oschina.net/simawei/blog/1928252

你可能感兴趣的文章
Redis可视化工具 Redis Desktop Manager
查看>>
Go基础系列:为select设置超时时间
查看>>
Android网络请求之OkHttp框架
查看>>
《Apache Kafka实战》读书笔记-调优Kafka集群
查看>>
小程序开发事项
查看>>
福利 | 2018各大技术大会资料汇总(可下载)
查看>>
寻找下一代CTO - 激发潜能把握成功!!
查看>>
用DELPHI 开发压缩、解压、自解压、加密
查看>>
Linux命令行得到系统IP
查看>>
SQL Server索引的维护 - 索引碎片、填充因子 <第三篇>
查看>>
python类型转换、数值操作(收藏)
查看>>
mysql delimiter
查看>>
关于C#静态构造函数的几点说明
查看>>
理解C# 4 dynamic(4) – 让人惊艳的Clay
查看>>
ipv6的一些问题
查看>>
Spring - Java-based configuration: Using @Configuration
查看>>
使用Envoy 作Sidecar Proxy的微服务模式-2.超时和重试
查看>>
node.js初体验之利用node.js的fs-文件系统,来写一个批量修改文件名的小工具
查看>>
数据流被污染?数据质量不高?蚂蚁金服数据资产管理平台了解一下
查看>>
我所理解的原型&原型链
查看>>