日期:2014-5-16 浏览次数:20120次 点赞次数:20

pthread_cond_timedwait怎么等待50ms啊?
我的代码是这样的
struct timeval t;
  gettimeofday(&t, NULL);  
  expire.tv_sec = t.tv_sec;  
  expire.tv_nsec =t.tv_usec * 1000 + 50 * 1000000;
   
  pthread_cond_timedwait(&m_cond, &m_mutex, &expire);

但是这样写,打印结果明显不对啊.....

2、
而且我想等待 5s超时我这样写:
struct timeval t;
  gettimeofday(&t, NULL);  
  expire.tv_sec = t.tv_sec;  
  expire.tv_nsec =t.tv_usec * 1000 + 5000 * 1000000;
   
  pthread_cond_timedwait(&m_cond, &m_mutex, &expire);
这样也不对....

3、
  expire.tv_sec = time(NULL) + 5;  
  expire.tv_nsec =0;
   
  pthread_cond_timedwait(&m_cond, &m_mutex, &expire);
这样等待5s就可以了...
但是 我想等待50ms咋办呢???
这个函数到底杂用呢.....求解答
谢谢

------解决方案--------------------
和gettimeofday有半毛钱关系?

------解决方案--------------------
探讨

和gettimeofday有半毛钱关系?