made mutexes recursive under Unix as well as under Win32

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2001-04-08 22:49:09 +00:00
parent e5aea7214d
commit 7a56de34ab
2 changed files with 13 additions and 4 deletions

View File

@@ -164,8 +164,13 @@ wxMutex::wxMutex()
{
m_internal = new wxMutexInternal;
pthread_mutex_init(&(m_internal->m_mutex),
(pthread_mutexattr_t*) NULL );
// support recursive locks like Win32, i.e. a thread can lock a mutex which
// it had itself already locked
pthread_mutexattr_t attr;
pthread_mutexattr_init(&attr);
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
pthread_mutex_init(&(m_internal->m_mutex), &attr);
m_locked = 0;
}