与mingw(sem_timedwait)的POSIX问题

时间:2015-05-21 09:21:39

标签: time operating-system posix semaphore

我正在使用mingw:

  

GNU Make 4.1

     

专为x86_64-w64-mingw32

而构建

我注意到sem_timedwait没有功能(它返回-1)。 我对sem_wait或sem_signal没有任何问题。

代码示例:

struct timespec timeSpec;
int   rc = 0;
timeSpec.tv_sec = 1000;
timeSpec.tv_nsec = 0;
rc = sem_timedwait(pSemId,&timeSpec);
  

CC = x86_64-w64-mingw32-gcc

1 个答案:

答案 0 :(得分:1)

确定, 时间应该是相对的而不是绝对的。     tm = time(NULL);     timeSpec.tv_sec = tm + 10;     timeSpec.tv_nsec = 0;     rc = sem_timedwait(pSemId,& timeSpec);

它解决了这个问题。