当前位置: 技术问答>linux和unix
使用select 定时的问题
来源: 互联网 发布时间:2016-04-03
本文导语: 因为系统对时间有要求,不过linux只能10ms,所以没有办法 int selectdelay(int times) { struct timeval outtime; outtime.tv_sec=0; outtime.tv_usec=1000*times; select(999999,NULL,NULL,NULL,&outtime); } 我想问问这段代...
因为系统对时间有要求,不过linux只能10ms,所以没有办法
我想问问这段代码有没有问题,写法是不是规范。有没有可能产生隐含的问题。
因为我一直报oops的错误所以稍微怀疑一下,虽然报的oops是sys_open
int selectdelay(int times)
{
struct timeval outtime;
outtime.tv_sec=0;
outtime.tv_usec=1000*times;
select(999999,NULL,NULL,NULL,&outtime);
}
我想问问这段代码有没有问题,写法是不是规范。有没有可能产生隐含的问题。
因为我一直报oops的错误所以稍微怀疑一下,虽然报的oops是sys_open
|
是不好。标准用法是用0
|
outtime.tv_usec=1000*times;
times可能是多少?会不会越界?
times可能是多少?会不会越界?
|
没有问题啊,你若是怀疑这个有问题可以单独写个测试程序或是用GDB单步跟踪一下啊
|
做定时用,没问题。
|
不知道楼主是不是有啥具体的要求。完全准确的定时是很难的。
代码本身没问题。
代码本身没问题。
|
why use 999999?
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。