发现select做延时windows没效果,Linux正常
在完善我的跨平台的发邮件类库时,select做延时windows没效果,Linux正常,还以为我代码写错了呢;在网上搜素下也没发现类似说法,于是我就写了段小测了,果然select延时在windows上缩水了
#include <iostream>
#include <time.h>
#ifdef WIN32
#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")
#else
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#endif
using namespace std;
int main()
{
struct timeval timeWait;
timeWait.tv_sec = 0;
timeWait.tv_usec = 10000;
int liRecvCnt = 0;
time_t t1, t2;
time(&t1);
while(liRecvCnt < 10)
{
timeWait.tv_sec = 0;
timeWait.tv_usec = 500000;
liRecvCnt++;
select(0, NULL, NULL, NULL, &timeWait);
}
time(&t2);
cout<<t2-t1<<endl;
return 0;
}
在VS2005上输出是 0
在Linux上输出是 5 S
你有什么想法,敬请留言
QQ:16645709
相关文档:
Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......
先
放一段示例程序,这段程序我在RH9和AS4下编译通过,程序功能就是用从2.2内核加入的PF_PACKET协议族来进行底层数据包捕获并显示。
PF_PACKET协议族是与系统TCP/IP协议栈并行的同级别模块,即从PF_PACKET协议族得到的数据包是没有经过系统TCP/IP协议栈处理
的。而且,通过设置混杂模式,可以很容易的实现sniffe ......
网上看到的这篇关于Linux下C语言嵌入汇编的文章写的非常全,转载过来。
Using Assembly Language in Linux.
Intel和AT&T汇编语法差异:
1。前缀:
Intel汇编寄存器和立即数无需前缀。后者寄存器前缀为%,立即数前缀为$。
eg:
Intex Syntax
mov eax,1
mov ebx,0f ......
目录
一、确保Linux 系统中装有NET-SNMP 协议... 1
1.Net-snmp 获取与安装... 1
2.Net-snmp 的配置... 1
3.Net-snmp 常用命令... 2
二、Squid. 3
1.检查linux是否存在squid老版本... 3
2.Squid 获取与安装... 3
3.Squid 配置... 4
4.Squid 测试... 4
5.Squid 常用命令... 5
6.Squid 其他... 6
7.Squid. ......