Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lockguards.h File Reference
#include "base/macros.h"
#include "ion/base/readwritelock.h"
#include "ion/base/spinmutex.h"
#include "ion/port/mutex.h"
Include dependency graph for lockguards.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ion::base::GenericLockGuardBase< MutexT >
 This file contains utility classes for automatically locking and unlocking mutexes. More...
 
class  ion::base::GenericLockGuard< MutexT >
 A LockGuard locks a mutex when created, and unlocks it when destroyed. More...
 
class  ion::base::GenericTryLockGuard< MutexT >
 A TryLockGuard attempts to lock a mutex when created, and if successful, will unlock it when destroyed. More...
 
class  ion::base::GenericUnlockGuard< MutexT >
 An UnlockGuard is the reverse of a LockGuard; it unlocks a mutex when created and locks it when destroyed. More...
 
class  ion::base::ManualLockGuard< T >
 A ManualLockGuard can be used to protect a variable with a mutex in situations where it is not possible for scoping to be used. More...
 

Namespaces

 ion
 Copyright 2016 Google Inc.
 
 ion::base
 EnumHelper instantiations. These must be in the ion::base namespace.
 

Typedefs

typedef GenericLockGuard
< port::Mutex > 
ion::base::LockGuard
 Convenient typedefs for ion::port::Mutex. More...
 
typedef GenericUnlockGuard
< port::Mutex > 
ion::base::UnlockGuard
 
typedef GenericTryLockGuard
< port::Mutex > 
ion::base::TryLockGuard
 
typedef GenericLockGuard
< SpinMutex > 
ion::base::SpinLockGuard
 Convenient typedefs for SpinMutex. More...
 
typedef GenericUnlockGuard
< SpinMutex > 
ion::base::SpinUnlockGuard
 
typedef GenericTryLockGuard
< SpinMutex > 
ion::base::SpinTryLockGuard
 
typedef GenericLockGuard
< ReadLock > 
ion::base::ReadGuard
 Convenient typedefs for ReadWriteLock. More...
 
typedef GenericLockGuard
< WriteLock > 
ion::base::WriteGuard