首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > 其他服务器 >

怎么控制一个线程的超时

2012-02-22 
如何控制一个线程的超时?void *thread1(void){printf(thread1 : I`m thread 1 \n)for (i0 iMAX i++

如何控制一个线程的超时?
void *thread1(void)
{
  printf("thread1 : I`m thread 1 \n");

  for (i=0; i<MAX; i++)
  {
  printf("thread1 : before global share number = %d \n",number);
  printf("thread1 : locking...\n");
  pthread_mutex_lock(&mut); // 上锁
  sleep(1);
  number++;
  pthread_mutex_unlock(&mut); // 解锁
  printf("thread 1 is unlocked!\n");
  printf("thread 1 : after global share number = %d \n",number);
  }

  printf("pthread 1 will exit...\n");
  pthread_exit(NULL);
}

。。。。。
  memset(&thread,0,sizeof(thread));  
  if((tmp = pthread_create(&thread[0],NULL,(void *)thread1,NULL)) != 0)  
  {  
  printf(" pthread 1 creating failed!\n");  
  }  
  else  
  {  
  printf(" pthread 1 creating successfully!\n");  
  }  
。。。。。
  if (thread[0] != 0)  
  {  
  pthread_join(thread[0],NULL); // 等待线程结束  
  printf("thread 1 completion!\n");  
  }

[解决办法]
关注。。。

热点排行