【发布时间】:2010-12-01 23:47:36
【问题描述】:
void wait(int timeInMs)
{
struct timespec timeToWait;
timeToWait.tv_sec = 5;
timeToWait.tv_nsec = timeInMs*1000;
int rt;
pthread_mutex_lock(&fakeMutex);
rt = pthread_cond_timedwait(&fakeCond, &fakeMutex, &timeToWait);
pthread_mutex_unlock(&fakeMutex);
}
我正在使用此代码尝试让线程等待一段时间,但它根本不起作用。没有错误,只是不会让程序执行得更慢。
我在想也许每个线程都需要有自己的条件和互斥锁,但这对我来说真的没有意义。
【问题讨论】:
-
这个例子没关系,但是 nsec = 1,000,000 * msec.