Top | ![]() |
![]() |
![]() |
![]() |
gint | camel_lock_dot () |
gint | camel_lock_fcntl () |
gint | camel_lock_flock () |
void | camel_unlock_dot () |
void | camel_unlock_fcntl () |
void | camel_unlock_flock () |
gint | camel_lock_folder () |
void | camel_unlock_folder () |
#define | CAMEL_LOCK_DOT_RETRY |
#define | CAMEL_LOCK_DOT_DELAY |
#define | CAMEL_LOCK_DOT_STALE |
#define | CAMEL_LOCK_RETRY |
#define | CAMEL_LOCK_DELAY |
enum | CamelLockType |
gint camel_lock_dot (const gchar *path
,GError **error
);
Create an exclusive lock using .lock semantics. All locks are equivalent to write locks (exclusive).
The function does nothing and returns success (zero), when dot locking had not been compiled.
gint camel_lock_fcntl (gint fd
,CamelLockType type
,GError **error
);
Create a lock using fcntl(2).
type
is CAMEL_LOCK_WRITE or CAMEL_LOCK_READ,
to create exclusive or shared read locks
The function does nothing and returns success (zero), when fcntl locking had not been compiled.
gint camel_lock_flock (gint fd
,CamelLockType type
,GError **error
);
Create a lock using flock(2).
type
is CAMEL_LOCK_WRITE or CAMEL_LOCK_READ,
to create exclusive or shared read locks
The function does nothing and returns success (zero), when flock locking had not been compiled.
void
camel_unlock_dot (const gchar *path
);
Attempt to unlock a .lock lock.
The function does nothing, when dot locking had not been compiled.
void
camel_unlock_fcntl (gint fd
);
Unlock an fcntl lock.
The function does nothing, when fcntl locking had not been compiled.
void
camel_unlock_flock (gint fd
);
Unlock an flock lock.
The function does nothing, when flock locking had not been compiled.
gint camel_lock_folder (const gchar *path
,gint fd
,CamelLockType type
,GError **error
);
Attempt to lock a folder, multiple attempts will be made using all locking strategies available.