![]() |
Storage Engine API
|
General purpose RAII wrapper for a resource managed by the lock manager. More...
#include <d_concurrency.h>
General purpose RAII wrapper for a resource managed by the lock manager.
See LockMode for the supported modes. Unlike DBLock/Collection lock, this will not do any additional checks/upgrades or global locking. Use ResourceLock for locking resources other than RESOURCE_GLOBAL, RESOURCE_DATABASE and RESOURCE_COLLECTION.
Public Member Functions | |
| ResourceLock (Locker *locker, ResourceId rid) | |
| ResourceLock (Locker *locker, ResourceId rid, LockMode mode) | |
| ResourceLock (ResourceLock &&otherLock) | |
| ~ResourceLock () | |
| void | lock (LockMode mode) |
| void | unlock () |
| bool | isLocked () const |
Private Member Functions | |
| MONGO_DISALLOW_COPYING (ResourceLock) | |
Private Attributes | |
| const ResourceId | _rid |
| Locker *const | _locker |
| LockResult | _result |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
| void mongo::Lock::ResourceLock::unlock | ( | ) |
|
private |
|
private |
|
private |