You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Yann Ylavic <yl...@gmail.com> on 2017/04/25 14:01:54 UTC

Windows condition variables' associated mutex type

Hi,

while trying to address the warnings noticed by Steffen (w.r.t. to our
64bit usecs timeouts badly converted to Windows' 32bit msecs timeouts)
in our thread/proc mutex/cond timed implementations, it appears that
thread_cond_timedwait() (the helper to implement
apr_thread_cond_[timed]wait() on WIN32) relies on the passed in mutex
to have a HANDLE since it calls WaitForSingleObject(mutex->handle)
unconditionally.

AIUI, not all mutex types use such handle, notably the default
implementation which has a CRITICAL_SECTION instead (with
mutex->handle == NULL), so how is it supposed to work in this case?

Nothing in the docs seems to suggest to not use an
APR_THREAD_MUTEX_DEFAULT with condvars (but e.g.
APR_THREAD_MUTEX_[UN]NESTED), shouldn't it be the case?



Regards,
Yann.