linux 线程调度
有n个线程,n=2吧,发现线程2的取作业时间tv1总在线程1返回结果tv2之后,源码示例如下:
pthread_mutex_t* g_pLock1, *g_pLock2;
void* work_thread(void*)
{
struct timeval tv1, tv2;
while(1)
{
{
pthread_mutex_lock(g_pLock1);
//get job
pthread_mutex_unlock(g_pLock1);
}
gettimeofday(&tv1, NULL);
//processing
{
pthread_mutex_lock(g_pLock2);
//push result
pthread_mutex_unlock(g_pLock2);
}
gettimeofday(&tv2, NULL);
}
}
谁能解说下