![]() |
![]() |
![]() |
Camel Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#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); gint camel_lock_fcntl (gint fd, CamelLockType type, GError **error); gint camel_lock_flock (gint fd, CamelLockType type, GError **error); void camel_unlock_dot (const gchar *path); void camel_unlock_fcntl (gint fd); void camel_unlock_flock (gint fd); gint camel_lock_folder (const gchar *path, gint fd, CamelLockType type, GError **error); void camel_unlock_folder (const gchar *path, gint fd);
gint camel_lock_dot (const gchar *path, GError **error);
Create an exclusive lock using .lock semantics. All locks are equivalent to write locks (exclusive).
|
|
|
return location for a GError, or NULL
|
Returns : |
-1 on error, sets ex appropriately.
|
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
|
|
|
|
|
return location for a GError, or NULL
|
Returns : |
-1 on error. |
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
|
|
|
|
|
return location for a GError, or NULL
|
Returns : |
-1 on error. |
void camel_unlock_dot (const gchar *path);
Attempt to unlock a .lock lock.
|
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.
|
Path to the file to lock (used for .locking only). |
|
Open file descriptor of the right type to lock. |
|
Type of lock, CAMEL_LOCK_READ or CAMEL_LOCK_WRITE. |
|
return location for a GError, or NULL
|
Returns : |
-1 on error, ex will describe the locking system that failed.
|