libstorage-ng
|
There is no guarantee about the thread safety of libstorage.
There is no guarantee that functions have no side effects if an exception is thrown unless stated differently.
Results are unsorted unless stated differently.
During initialisation libstorage installs a global lock so that several programs trying to use libstorage at the same time do not interfere. This lock is either read-only or read-write depending on the read_only parameter used in storage::Environment().
Several processes may hold a read-lock, but only one process may hold a read-write lock. An read-write lock excludes all other locks, both read-only and read-write.
The support for multiple read-only locks is experimental.
Locking may also fail for other reasons, e.g. limited permissions.