UI::Util::BSDFileMutex Class Reference

Mutex For BSD Advisory File Locking. More...

`#include <File.hpp>`

Inheritance diagram for UI::Util::BSDFileMutex:
Collaboration diagram for UI::Util::BSDFileMutex:

## Public Member Functions

| BSDFileMutex (std::string const &lockFile)
| Constructor from file name.
| BSDFileMutex (int fd)
| Constructor from file descriptor.
Standard mutex methods.
bool | tryEnterMutex () throw ()
void | enterMutex ()
void | leaveMutex ()
Public Member Functions inherited from UI::Util::File
| File (std::string const &name, int flags=O_CREAT|O_WRONLY, mode_t mode=S_IRUSR|S_IWUSR, bool closeFd=true)
| Constructor.
| File (int fd, bool closeFd=false)
| Constructor from file descriptor.
std::string const & | getName () const
| Get file name. This will always deliver en empty string if constructed from fd.
Public Member Functions inherited from UI::Util::FileDescriptor
| FileDescriptor (int fd=-1, bool closeFd=false)
| Constructor from file descriptor.
virtual | ~FileDescriptor ()
| Destructor.
virtual std::streamsize | read (void *const buf, std::streamsize count)
| C++ like virtual read method.
virtual std::streamsize | write (void const *const buf, std::streamsize count)
| C++ like virtual erite method.
int | getFd () const
| Get file descriptor.

## Additional Inherited Members

Public Types inherited from UI::Util::FileDescriptor
enum | ErrorCode { OpenErr_ = 1 , ReadErr_ , WriteErr_ , LockErr_ , UnlockErr_ , BindErr_ , ConnectErr_ , UnblockErr_ , ListenErr_ , ShutdownErr_ }
| Error codes for exceptions.
typedef CodeException< ErrorCode > | Exception
| Exceptions for this class.
Static Public Member Functions inherited from UI::Util::FileDescriptor
static void | fdClose (int const &fd, std::string const &id, bool const &doClose=true)
| Helper to close file descriptors from destructors.
Protected Member Functions inherited from UI::Util::FileDescriptor
void | init (int fd, bool closeFd=false)
| To be called in a constructor.
Protected Attributes inherited from UI::Util::FileDescriptor
int | fd_
| The file descriptor that is managed.

## Detailed Description

Mutex For BSD Advisory File Locking.

See also
  MutexLock
  flock(2), open(2)

Attention
  BSD locking does not work over NFS.

Examples
  FileLock.cpp.

## Constructor & Destructor Documentation

## BSDFileMutex() [1/2]

UI::Util::BSDFileMutex::BSDFileMutex | ( | std::string const & | lockFile | ) |

Constructor from file name.

Parameters

  lockFile | Name of lock file

See also
  FileDescriptor

References UI::Util::File::File().

## BSDFileMutex() [2/2]

UI::Util::BSDFileMutex::BSDFileMutex | ( | int | fd | ) |

Constructor from file descriptor.

Parameters

  fd | Opened file descriptor

See also
  FileDescriptor

References UI::Util::File::File().

The documentation for this class was generated from the following files:

- File.hpp
- File.cpp