ACE_Semphore
我在使用ACE_Semphore类的时候,acquire()的参数是一个ACE_Time_Value变量,可是acquire()马上就返回-1了,在semphore.h中的注释是 :Note that <tv> is assumed to be in "absolute" rather than "relative" time.我不明白这一句的意思,怎么样才能让acquire在等待一段时间之后再返回(没有release)呢? 试一下,getdayoftime 取出绝对时间,再加上你需要等的相对时间。 谢谢 modern的关注。ACE_Semaphore g_DataCopySem(0);
ACE_Time_Value g_StartTime(ACE_OS::gettimeofday());
ACE_Time_Value g_TimeWait(15, 0);
g_DataCopySem.acquire(g_StartTime + g_TimeWait);
我是这么写的,可是还是直接就返回了,麻烦 modern 再帮帮忙,呵呵 这样写没有问题,我拿你的代码运行了。 谢谢 modern ,我刚刚试了,没有问题,可能前面什么地方写错了,呵呵
页:
[1]