[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Lock module improvement
From: |
Bruno Haible |
Subject: |
Re: Lock module improvement |
Date: |
Thu, 14 Aug 2008 12:51:47 +0200 |
User-agent: |
KMail/1.5.4 |
Addendum:
For the gettext macros, it's better to distinguish macros and functions, i.e.
not to have symbols which are macros on one platform and functions on others.
I'm applying this:
2008-08-14 Bruno Haible <address@hidden>
* lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
glthread_rwlock_unlock, glthread_rwlock_destroy,
glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
glthread_recursive_lock_destroy): Define as macros always.
* lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
glthread_lock_lock.
(glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
(glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
(glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
(glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
(glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
(glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
(glthread_recursive_lock_lock_func): Renamed from
glthread_recursive_lock_lock.
(glthread_recursive_lock_unlock_func): Renamed from
glthread_recursive_lock_unlock.
(glthread_recursive_lock_destroy_func): Renamed from
glthread_recursive_lock_destroy.
--- lib/glthread/lock.h.orig 2008-08-14 12:49:08.000000000 +0200
+++ lib/glthread/lock.h 2008-08-14 12:48:13.000000000 +0200
@@ -673,10 +673,16 @@
{ { 0, -1 } }
# define glthread_lock_init(LOCK) \
(glthread_lock_init_func (LOCK), 0)
+# define glthread_lock_lock(LOCK) \
+ glthread_lock_lock_func (LOCK)
+# define glthread_lock_unlock(LOCK) \
+ glthread_lock_unlock_func (LOCK)
+# define glthread_lock_destroy(LOCK) \
+ glthread_lock_destroy_func (LOCK)
extern void glthread_lock_init_func (gl_lock_t *lock);
-extern int glthread_lock_lock (gl_lock_t *lock);
-extern int glthread_lock_unlock (gl_lock_t *lock);
-extern int glthread_lock_destroy (gl_lock_t *lock);
+extern int glthread_lock_lock_func (gl_lock_t *lock);
+extern int glthread_lock_unlock_func (gl_lock_t *lock);
+extern int glthread_lock_destroy_func (gl_lock_t *lock);
/* ------------------------- gl_rwlock_t datatype ------------------------- */
@@ -709,11 +715,19 @@
{ { 0, -1 } }
# define glthread_rwlock_init(LOCK) \
(glthread_rwlock_init_func (LOCK), 0)
+# define glthread_rwlock_rdlock(LOCK) \
+ glthread_rwlock_rdlock_func (LOCK)
+# define glthread_rwlock_wrlock(LOCK) \
+ glthread_rwlock_wrlock_func (LOCK)
+# define glthread_rwlock_unlock(LOCK) \
+ glthread_rwlock_unlock_func (LOCK)
+# define glthread_rwlock_destroy(LOCK) \
+ glthread_rwlock_destroy_func (LOCK)
extern void glthread_rwlock_init_func (gl_rwlock_t *lock);
-extern int glthread_rwlock_rdlock (gl_rwlock_t *lock);
-extern int glthread_rwlock_wrlock (gl_rwlock_t *lock);
-extern int glthread_rwlock_unlock (gl_rwlock_t *lock);
-extern int glthread_rwlock_destroy (gl_rwlock_t *lock);
+extern int glthread_rwlock_rdlock_func (gl_rwlock_t *lock);
+extern int glthread_rwlock_wrlock_func (gl_rwlock_t *lock);
+extern int glthread_rwlock_unlock_func (gl_rwlock_t *lock);
+extern int glthread_rwlock_destroy_func (gl_rwlock_t *lock);
/* --------------------- gl_recursive_lock_t datatype --------------------- */
@@ -737,10 +751,16 @@
{ { 0, -1 }, 0, 0 }
# define glthread_recursive_lock_init(LOCK) \
(glthread_recursive_lock_init_func (LOCK), 0)
+# define glthread_recursive_lock_lock(LOCK) \
+ glthread_recursive_lock_lock_func (LOCK)
+# define glthread_recursive_lock_unlock(LOCK) \
+ glthread_recursive_lock_unlock_func (LOCK)
+# define glthread_recursive_lock_destroy(LOCK) \
+ glthread_recursive_lock_destroy_func (LOCK)
extern void glthread_recursive_lock_init_func (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_lock (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_unlock (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_destroy (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock);
/* -------------------------- gl_once_t datatype -------------------------- */
--- lib/glthread/lock.c.orig 2008-08-14 12:49:07.000000000 +0200
+++ lib/glthread/lock.c 2008-08-14 12:48:13.000000000 +0200
@@ -681,7 +681,7 @@
}
int
-glthread_lock_lock (gl_lock_t *lock)
+glthread_lock_lock_func (gl_lock_t *lock)
{
if (!lock->guard.done)
{
@@ -699,7 +699,7 @@
}
int
-glthread_lock_unlock (gl_lock_t *lock)
+glthread_lock_unlock_func (gl_lock_t *lock)
{
if (!lock->guard.done)
return EINVAL;
@@ -708,7 +708,7 @@
}
int
-glthread_lock_destroy (gl_lock_t *lock)
+glthread_lock_destroy_func (gl_lock_t *lock)
{
if (!lock->guard.done)
return EINVAL;
@@ -816,7 +816,7 @@
}
int
-glthread_rwlock_rdlock (gl_rwlock_t *lock)
+glthread_rwlock_rdlock_func (gl_rwlock_t *lock)
{
if (!lock->guard.done)
{
@@ -870,7 +870,7 @@
}
int
-glthread_rwlock_wrlock (gl_rwlock_t *lock)
+glthread_rwlock_wrlock_func (gl_rwlock_t *lock)
{
if (!lock->guard.done)
{
@@ -923,7 +923,7 @@
}
int
-glthread_rwlock_unlock (gl_rwlock_t *lock)
+glthread_rwlock_unlock_func (gl_rwlock_t *lock)
{
if (!lock->guard.done)
return EINVAL;
@@ -967,7 +967,7 @@
}
int
-glthread_rwlock_destroy (gl_rwlock_t *lock)
+glthread_rwlock_destroy_func (gl_rwlock_t *lock)
{
if (!lock->guard.done)
return EINVAL;
@@ -994,7 +994,7 @@
}
int
-glthread_recursive_lock_lock (gl_recursive_lock_t *lock)
+glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock)
{
if (!lock->guard.done)
{
@@ -1024,7 +1024,7 @@
}
int
-glthread_recursive_lock_unlock (gl_recursive_lock_t *lock)
+glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock)
{
if (lock->owner != GetCurrentThreadId ())
return EPERM;
@@ -1039,7 +1039,7 @@
}
int
-glthread_recursive_lock_destroy (gl_recursive_lock_t *lock)
+glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock)
{
if (lock->owner != 0)
return EBUSY;
- Re: Lock module improvement, Yoann Vandoorselaere, 2008/08/01
- Re: Lock module improvement, Bruno Haible, 2008/08/02
- Re: Lock module improvement, Yoann Vandoorselaere, 2008/08/02
- Re: Lock module improvement, Bruno Haible, 2008/08/03
- Re: Lock module improvement, Yoann Vandoorselaere, 2008/08/04
- Re: Lock module improvement,
Bruno Haible <=
- Re: Lock module improvement, Bruno Haible, 2008/08/17
- Re: Lock module improvement, Bruno Haible, 2008/08/18
- Re: Lock module improvement, Yoann Vandoorselaere, 2008/08/18
- Re: multithread CPPFLAGS, Bruno Haible, 2008/08/20
- Re: multithread CPPFLAGS, Yoann Vandoorselaere, 2008/08/21
- Re: multithread CPPFLAGS, Bruno Haible, 2008/08/21
- Re: multithread CPPFLAGS, Yoann Vandoorselaere, 2008/08/21
- Re: multithread CPPFLAGS, Matthew Woehlke, 2008/08/21
- Re: multithread CPPFLAGS, Yoann Vandoorselaere, 2008/08/25
- Re: multithread CPPFLAGS, Bruno Haible, 2008/08/25