条件等待问题 pthread_cond_timedwait

[复制链接]
 楼主| fq1110 发表于 2011-5-11 14:55 | 显示全部楼层 |阅读模式
使用LPC3250+Linux2.6.27+arm gcc version 2.95.2写的程序,里面使用了pthread_cond_timedwait 函数,在这命令之后printf("abcd\n");这句偶尔执行不到,并且导致了ARM主板,LINUX死机,我的LINUX点灯程序都不闪了,请问这是什么原因呢?是主板问题吗?还是pthread_cond_timedwait 这个函数的问题?
希望大家多多帮忙。
 楼主| fq1110 发表于 2011-5-11 17:46 | 显示全部楼层
int WaitCond(unsigned short v,unsigned long timeout_ms,unsigned long second)
{
pthread_mutex_lock(&mutex);
timeval tv;
gettimeofday(&tv,NULL);
tv.tv_sec+=second;
tv.tv_sec+=(tv.tv_usec+timeout_ms*1000l)/1000000l;
tv.tv_usec=(tv.tv_usec+timeout_ms*1000l)%1000000l;
timespec ts;
TIMEVAL_TO_TIMESPEC(&tv,&ts);
//        clock_gettime(CLOCK_REALTIME,&testtime);
//        printf("%d %d\n",testtime.tv_sec,testtime.tv_nsec);
pthread_cond_timedwait(&WaitCond,&WaitMutex,&ts);//有时调用这就死机了。
printf("abcd\n");
pthread_mutex_unlock(&mutex);
return 1;
}
以上是我的函数信息,请大家提出意见与建议啊。。不管对的错的,都谢谢大家了。
 楼主| fq1110 发表于 2011-5-12 09:20 | 显示全部楼层
:dizzy:,怎么没人回答呢?
 楼主| fq1110 发表于 2011-5-14 16:39 | 显示全部楼层
热心人出来帮帮忙啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

68

主题

530

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部

68

主题

530

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部