#include "psem.h" #include #include "time_util.h" int psem_timedwait(sem_t *sem, const struct timespec *ts) { struct timespec abs_timeout = TimeUtil::calc_abs_time(ts); return sem_timedwait(sem, &abs_timeout); // int rv ; // while ( (rv = sem_timedwait(sem, &abs_timeout)) == -1) { // if(errno == EINTR) // continue; // else { // // LoggerFactory::getLogger()->error(errno, "LockFreeQueue push_timeout"); // return -1; // } // } // return 0; } int psem_wait(sem_t *sem) { return sem_wait(sem); // int rv; // while ( (rv = sem_wait(sem)) == -1) { // if(errno == EINTR) // continue; // else { // return -1; // } // } // return 0; } int psem_trywait(sem_t *sem) { return sem_trywait(sem); } int psem_post(sem_t *sem) { return sem_post(sem); }