unix编程中timeval结构体的使用

1839阅读 0评论2012-08-22 风箫夜吟
分类:系统运维

今天在在学习过程中遇到一个结构体timeval,不是很了解它用法,现在简单的总结一下:
struct timeval
{
       time_t tv_sec;  /*seconds, 秒*/

       suseconds tv_usec; /*microseconds, 微秒*/

}

其实从结构体的定义不难看出,这个结构体定义了一个时间的表示方法,这个结构体最为重要的作用就是在套接字

选项接口setsockopt(int sockfd, int level, int option, const void *val, socklen_t len)控制中的使用当需要

控制利用套接字进行收发数据的时间延迟时,传递的一个参数!

struct timeval tv = {1, 0};

setsockopt(int sockfd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));

setsockopt(int sockfd,SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv));

这样就把我们用recieve和send函数进行数据通信时,时间延迟定义为了1s!

上一篇:win7+ubuntu双系统重装时遇到的问题
下一篇:浅谈c++中stringstream对象