14#ifndef LIGHTREMUTEXDIRECT_H
15#define LIGHTREMUTEXDIRECT_H
39 INLINE
bool try_lock();
43 BLOCKING INLINE
void acquire()
const;
44 BLOCKING INLINE
void acquire(
Thread *current_thread)
const;
45 INLINE
void elevate_lock()
const;
46 INLINE
void release()
const;
48 INLINE
bool debug_is_locked()
const;
50 INLINE
void set_name(
const std::string &name);
51 INLINE
void clear_name();
52 INLINE
bool has_name()
const;
53 INLINE std::string get_name()
const;
55 void output(std::ostream &out)
const;
58#ifdef HAVE_REMUTEXTRUEIMPL
59 mutable ReMutexTrueImpl _impl;
This class implements a standard lightReMutex by making direct calls to the underlying implementation...
void output(std::ostream &out) const
This method is declared virtual in MutexDebug, but non-virtual in LightReMutexDirect.
This class implements a standard reMutex by making direct calls to the underlying implementation laye...
A thread; that is, a lightweight process.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.