DBM::Deep::Storage(3p)

NAME
DBM::Deep::Storage - abstract base class for storage

  flush()
This flushes the filehandle. This takes no parameters and returns nothing.

  is_writable()
This takes no parameters. It returns a boolean saying if this filehandle is writable.

Taken from <http://www.perlmonks.org/?node_id=691054/>.

LOCKING
This is where the actual locking of the storage medium is performed. Nested locking is supported.

NOTE: It is unclear what will happen if a read lock is taken, then a write lock is taken as a nested lock, then the write lock is released.

Currently, the only locking method supported is flock(1). This is a whole-file lock. In the future, more granular locking may be supported. The API for that is unclear right now.

The following methods manage the locking status. In all cases, they take a DBM::Deep object and returns nothing.

•   lock_exclusive( $obj )

    Take a lock usable for writing.

•   lock_shared( $obj )

    Take a lock usable for reading.

•   unlock( $obj )

    Releases the last lock taken. If this is the outermost lock, then the object is actually unlocked.