[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: A clean way to detect if a ldap_pvt_thread_mutex is locked (best would be also to know who's the owner of the lock :)
Pierangelo Masarati writes:
> I fear yet more few minor concurrency issues in libldap; I'd like to be
> able to assert if a mutex is locked from inside library functions,
Duh... please ignore my previous message. I forgot you said _assert_.
Well, that one isn't hard.
define an ldap_thread_mutex_assert_owner() which is a no-op by default.
Then,
#if LDAP_THREAD_DEBUG_MUTEX
#if <the specific thread implementation you are using>
<inspect the mutex structure and do some magic by hand>
#endif
Or more generally, use my thr_debug.c package and extend
ldap_debug_thread_cond_t with the thread ID and info about whether the
mutex is locked. Get thread ID with ldap_pvt_thread_self(), compare
with ldap_pvt_thread_equal().
#endif
--
Hallvard