[glib: 1/2] gthread: Fix g_rw_lock_reader_lock() documentation
- From: Sebastian Dröge <sdroege src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib: 1/2] gthread: Fix g_rw_lock_reader_lock() documentation
- Date: Mon, 3 Jun 2019 10:44:49 +0000 (UTC)
commit 231661e46c865881aa5bf5da05756622da5baa58
Author: Philip Withnall <withnall endlessm com>
Date: Fri May 31 21:36:34 2019 +0100
gthread: Fix g_rw_lock_reader_lock() documentation
The documentation erroneously said that a thread calling
g_rw_lock_reader_lock() would always block if another thread was waiting
for the write lock. That’s not true: if no thread holds the lock, it is
implementation defined which of a waiting reader and writer gets the
lock.
See
http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_rwlock_rdlock.html.
Signed-off-by: Philip Withnall <withnall endlessm com>
Fixes: #590
glib/gthread-posix.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/glib/gthread-posix.c b/glib/gthread-posix.c
index 1e2fdb59a..8b8561639 100644
--- a/glib/gthread-posix.c
+++ b/glib/gthread-posix.c
@@ -587,8 +587,10 @@ g_rw_lock_writer_unlock (GRWLock *rw_lock)
* @rw_lock: a #GRWLock
*
* Obtain a read lock on @rw_lock. If another thread currently holds
- * the write lock on @rw_lock or blocks waiting for it, the current
- * thread will block. Read locks can be taken recursively.
+ * the write lock on @rw_lock, the current thread will block. If another thread
+ * does not hold the write lock, but is waiting for it, it is implementation
+ * defined whether the reader or writer will block. Read locks can be taken
+ * recursively.
*
* It is implementation-defined how many threads are allowed to
* hold read locks on the same lock simultaneously. If the limit is hit,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]