8#ifndef INCLUDED_BSLMT_RECURSIVEMUTEXIMPL_PTHREAD
9#define INCLUDED_BSLMT_RECURSIVEMUTEXIMPL_PTHREAD
68#include <bslscm_version.h>
72#ifdef BSLMT_PLATFORM_POSIX_THREADS
78#ifndef PTHREAD_MUTEX_RECURSIVE
85template <
class THREAD_POLICY>
86class RecursiveMutexImpl;
97class RecursiveMutexImpl<Platform::PosixThreads> {
100 pthread_mutex_t d_lock;
102#ifndef PTHREAD_MUTEX_RECURSIVE
113 RecursiveMutexImpl(
const RecursiveMutexImpl&);
114 RecursiveMutexImpl& operator=(
const RecursiveMutexImpl&);
122 RecursiveMutexImpl();
125 ~RecursiveMutexImpl();
166RecursiveMutexImpl<bslmt::Platform::PosixThreads>::~RecursiveMutexImpl()
168 pthread_mutex_destroy(&d_lock);
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bslmt_barrier.h:344
Definition bsls_spinlock.h:381