From f85c9b875b060681b51f57b15074ba1c7c9f5636 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期一, 20 七月 2020 11:10:02 +0800
Subject: [PATCH] update

---
 queue/sem_util.c |   22 ++++++++++++++++------
 1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/queue/sem_util.c b/queue/sem_util.c
index ea23f7c..ceedac3 100644
--- a/queue/sem_util.c
+++ b/queue/sem_util.c
@@ -79,8 +79,10 @@
     sops.sem_flg =  0;
 
     while (semop(semId, &sops, 1) == -1)
-        if (errno != EINTR )
+        if (errno != EINTR ) {
+            err_msg(errno, "SemUtil::dec");
             return -1;
+        }
 
     return 0;
 }
@@ -94,8 +96,10 @@
     sops.sem_flg =  IPC_NOWAIT;
 
     while (semop(semId, &sops, 1) == -1)
-        if (errno != EINTR )
+        if (errno != EINTR ) {
+            err_msg(errno, "SemUtil::dec_nowait");
             return -1;
+        }
 
     return 0;
 }
@@ -109,8 +113,10 @@
     sops.sem_flg = 0;
 
     while ( semtimedop(semId, &sops, 1, timeout) == -1)
-        if (errno != EINTR )
+        if (errno != EINTR ) {
+            err_msg(errno, "SemUtil::dec_timeout");
             return -1;
+        }
 
     return 0;
 }
@@ -126,13 +132,17 @@
     sops.sem_op = 1;
     sops.sem_flg = 0;
 
-    return semop(semId, &sops, 1);
+    int rv = semop(semId, &sops, 1);
+    if(rv == -1) {
+        err_msg(errno, "SemUtil::inc");
+    }
+    return rv;
 }
 
 void SemUtil::remove(int semid) {
     union semun dummy;
     if (semctl(semid, 0, IPC_RMID, dummy) == -1)
-        err_exit(errno, "semctl");
+        err_msg(errno, "SemUtil::remove");
 
 }
 
@@ -142,7 +152,7 @@
     union semun arg;
     arg.val = val;
     if (semctl(semId, 0, SETVAL, arg) == -1)
-        err_exit(errno, "SemUtil::set semctl");
+        err_msg(errno, "SemUtil::set");
 }
 
 

--
Gitblit v1.8.0