|
LSSTApplications
1.1.2+25,10.0+13,10.0+132,10.0+133,10.0+224,10.0+41,10.0+8,10.0-1-g0f53050+14,10.0-1-g4b7b172+19,10.0-1-g61a5bae+98,10.0-1-g7408a83+3,10.0-1-gc1e0f5a+19,10.0-1-gdb4482e+14,10.0-11-g3947115+2,10.0-12-g8719d8b+2,10.0-15-ga3f480f+1,10.0-2-g4f67435,10.0-2-gcb4bc6c+26,10.0-28-gf7f57a9+1,10.0-3-g1bbe32c+14,10.0-3-g5b46d21,10.0-4-g027f45f+5,10.0-4-g86f66b5+2,10.0-4-gc4fccf3+24,10.0-40-g4349866+2,10.0-5-g766159b,10.0-5-gca2295e+25,10.0-6-g462a451+1
LSSTDataManagementBasePackage
|
Mutual exclusion lock suitable for initializing shared memory objects. More...
Public Member Functions | |
| BootstrapLock (char const *const name) | |
| ~BootstrapLock () | |
Public Attributes | |
| char const *const | _name |
| int | _fd |
Mutual exclusion lock suitable for initializing shared memory objects.
Before standard POSIX shared memory mutexes can be used for inter-process synchronization, shared memory must be allocated and initialized. Therefore, such mutexes cannot be used to protect allocation and initialization of shared memory blocks themselves. BootstrapLock instances get around this by spinning on exclusive creation of a zero-size shared memory object.
Definition at line 88 of file ChunkManager.cc.
| lsst::ap::detail::BootstrapLock::BootstrapLock | ( | char const *const | name | ) |
Definition at line 98 of file ChunkManager.cc.
| lsst::ap::detail::BootstrapLock::~BootstrapLock | ( | ) |
Definition at line 120 of file ChunkManager.cc.
| int lsst::ap::detail::BootstrapLock::_fd |
Definition at line 91 of file ChunkManager.cc.
| char const* const lsst::ap::detail::BootstrapLock::_name |
Definition at line 90 of file ChunkManager.cc.
1.8.5