diff options
Diffstat (limited to 'source/libs/asura-lib-utils/threading/mutex.h')
-rw-r--r-- | source/libs/asura-lib-utils/threading/mutex.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/source/libs/asura-lib-utils/threading/mutex.h b/source/libs/asura-lib-utils/threading/mutex.h index 51fe63e..7e7d877 100644 --- a/source/libs/asura-lib-utils/threading/mutex.h +++ b/source/libs/asura-lib-utils/threading/mutex.h @@ -32,15 +32,15 @@ namespace AsuraEngine }; - class Lock + class _mutex_locker { public: - Lock(Mutex& mutex) + _mutex_locker(Mutex& mutex) : m(mutex) { m.Lock(); }; - ~Lock() + ~_mutex_locker() { m.Unlock(); } @@ -50,11 +50,11 @@ namespace AsuraEngine }; // ڵջӴλÿʼջΪٽ -#define lock(mutex) Lock _asura_scoped_lock_0x0_(mutex) -#define lock2(mutex) Lock _asura_scoped_lock_0x1_(mutex) -#define lock3(mutex) Lock _asura_scoped_lock_0x2_(mutex) -#define lock4(mutex) Lock _asura_scoped_lock_0x3_(mutex) -#define lock5(mutex) Lock _asura_scoped_lock_0x4_(mutex) +#define lock(mutex) _mutex_locker _asura_scoped_lock_0x0(mutex) +#define lock2(mutex) _mutex_locker _asura_scoped_lock_0x1(mutex) +#define lock3(mutex) _mutex_locker _asura_scoped_lock_0x2(mutex) +#define lock4(mutex) _mutex_locker _asura_scoped_lock_0x3(mutex) +#define lock5(mutex) _mutex_locker _asura_scoped_lock_0x4(mutex) ASURA_ABSTRACT class MutexImpl { |