![]() |
![]() |
![]() |
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
,CamelException *ex
); gint camel_lock_fcntl (gint fd
,CamelLockType type
,CamelException *ex
); gint camel_lock_flock (gint fd
,CamelLockType type
,CamelException *ex
); 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
,CamelException *ex
); void camel_unlock_folder (const gchar *path
,gint fd
);
gint camel_lock_dot (const gchar *path
,CamelException *ex
);
Create an exclusive lock using .lock semantics. All locks are equivalent to write locks (exclusive).
Returns : | -1 on error, sets ex appropriately.
|
gint camel_lock_fcntl (gint fd
,CamelLockType type
,CamelException *ex
);
Create a lock using fcntl(2).
type
is CAMEL_LOCK_WRITE or CAMEL_LOCK_READ,
to create exclusive or shared read locks
Returns : | -1 on error. |
gint camel_lock_flock (gint fd
,CamelLockType type
,CamelException *ex
);
Create a lock using flock(2).
type
is CAMEL_LOCK_WRITE or CAMEL_LOCK_READ,
to create exclusive or shared read locks
Returns : | -1 on error. |
gint camel_lock_folder (const gchar *path
,gint fd
,CamelLockType type
,CamelException *ex
);
Attempt to lock a folder, multiple attempts will be made using all locking strategies available.
path : |
Path to the file to lock (used for .locking only). |
fd : |
Open file descriptor of the right type to lock. |
type : |
Type of lock, CAMEL_LOCK_READ or CAMEL_LOCK_WRITE. |
Returns : | -1 on error, ex will describe the locking system that failed.
|