From 62ccddbe4abfea9883737d79772d4e8d1084f6b5 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期三, 03 二月 2021 17:12:51 +0800
Subject: [PATCH] update
---
src/svsem.cpp | 36 ++++++++++++++----------------------
1 files changed, 14 insertions(+), 22 deletions(-)
diff --git a/src/svsem.cpp b/src/svsem.cpp
index 82390b6..27c88a8 100644
--- a/src/svsem.cpp
+++ b/src/svsem.cpp
@@ -83,7 +83,7 @@
while (semop(semid, &sops, 1) == -1)
if (errno != EINTR) {
// err_msg(errno, "svsem_dec");
- return errno;
+ return -1;
}
return 0;
@@ -95,14 +95,9 @@
sops.sem_num = 0;
sops.sem_op = -1;
sops.sem_flg = IPC_NOWAIT | 0;
+
- while (semop(semid, &sops, 1) == -1)
- if (errno != EINTR) {
- // err_msg(errno, "svsem_dec_nowait");
- return errno;
- }
-
- return 0;
+ return semop(semid, &sops, 1) ;
}
int svsem_timedwait(const int semid, const struct timespec *timeout) {
@@ -115,7 +110,7 @@
while (semtimedop(semid, &sops, 1, timeout) == -1)
if (errno != EINTR) {
// err_msg(errno, "svsem_psem_timedwait");
- return errno;
+ return -1;
}
return 0;
@@ -133,7 +128,7 @@
int rv = semop(semid, &sops, 1);
if (rv == -1) {
// err_msg(errno, "svsem_inc");
- return errno;
+ return -1;
}
return 0;
}
@@ -149,7 +144,7 @@
arg.val = 1;
if (semctl(semid, 1, SETVAL, arg) == -1) {
err_msg(errno, "svsem_set");
- return errno;
+ return -1;
}
//閲婃斁mutex
@@ -165,7 +160,7 @@
while (semop(semid, sops, 2) == -1)
if (errno != EINTR) {
// err_msg(errno, "Svsvsem_dec");
- return errno;
+ return -1;
}
@@ -177,7 +172,7 @@
while (semop(semid, sops, 1) == -1)
if (errno != EINTR) {
// err_msg(errno, "Svsvsem_dec");
- return errno;
+ return -1;
}
return 0;
@@ -190,7 +185,7 @@
if (semctl(semid, 1, SETVAL, arg) == -1) {
err_msg(errno, "svsem_set");
- return errno;
+ return -1;
}
return 0;
}
@@ -212,7 +207,7 @@
while (semop(semid, &sops, 1) == -1)
if (errno != EINTR) {
// err_msg(errno, "svsem_zero");
- return errno;
+ return -1;
}
return 0;
@@ -229,7 +224,7 @@
while (semop(semid, &sops, 1) == -1)
if (errno != EINTR) {
// err_msg(errno, "svsem_zero_nowait");
- return errno;
+ return -1;
}
return 0;
@@ -245,7 +240,7 @@
while (semtimedop(semid, &sops, 1, timeout) == -1)
if (errno != EINTR) {
// err_msg(errno, "svsem_zero_timeout");
- return errno;
+ return -1;
}
return 0;
@@ -257,11 +252,8 @@
int svsem_set(int semid, int val) {
union semun arg;
arg.val = val;
- if (semctl(semid, 0, SETVAL, arg) == -1) {
- err_msg(errno, "svsem_set");
- return errno;
- }
- return 0;
+
+ return semctl(semid, 0, SETVAL, arg);
}
--
Gitblit v1.8.0