From 607ac3ae8bfc017e10a7907e69dcbc3ab2a0fb63 Mon Sep 17 00:00:00 2001 From: wangzhengquan <wangzhengquan85@126.com> Date: 星期五, 05 二月 2021 13:54:56 +0800 Subject: [PATCH] add stop method --- src/psem.cpp | 42 +++++++++++++++++++++--------------------- 1 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/psem.cpp b/src/psem.cpp index fd06216..2ace11f 100644 --- a/src/psem.cpp +++ b/src/psem.cpp @@ -6,31 +6,31 @@ int psem_timedwait(sem_t *sem, const struct timespec *ts) { struct timespec abs_timeout = TimeUtil::calc_abs_time(ts); - - 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; + 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) { - int rv; - while ( (rv = sem_wait(sem)) == -1) { - if(errno == EINTR) - continue; - else { - // LoggerFactory::getLogger()->error(errno, "LockFreeQueue push_timeout"); - return -1; - } - } - return 0; + 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) { -- Gitblit v1.8.0