acl  3.5.3.0
acl_myflock.h 文件参考
#include "acl_define.h"
+ acl_myflock.h 的引用(Include)关系图:
+ 此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

宏定义

#define ACL_FLOCK_STYLE_FLOCK   1
 
#define ACL_FLOCK_STYLE_FCNTL   2
 
#define ACL_FLOCK_OP_NONE   0
 
#define ACL_FLOCK_OP_SHARED   1
 
#define ACL_FLOCK_OP_EXCLUSIVE   2
 
#define ACL_FLOCK_OP_NOWAIT   4
 
#define ACL_FLOCK_OP_BITS   (ACL_FLOCK_OP_SHARED | ACL_FLOCK_OP_EXCLUSIVE | ACL_FLOCK_OP_NOWAIT)
 

函数

ACL_API int acl_myflock (ACL_FILE_HANDLE fd, int lock_style, int operation)
 

宏定义说明

◆ ACL_FLOCK_OP_BITS

#define ACL_FLOCK_OP_BITS   (ACL_FLOCK_OP_SHARED | ACL_FLOCK_OP_EXCLUSIVE | ACL_FLOCK_OP_NOWAIT)

加锁方式的位集合

在文件 acl_myflock.h42 行定义.

◆ ACL_FLOCK_OP_EXCLUSIVE

#define ACL_FLOCK_OP_EXCLUSIVE   2

排它独享锁

在文件 acl_myflock.h31 行定义.

◆ ACL_FLOCK_OP_NONE

#define ACL_FLOCK_OP_NONE   0

解锁

在文件 acl_myflock.h29 行定义.

◆ ACL_FLOCK_OP_NOWAIT

#define ACL_FLOCK_OP_NOWAIT   4

无等待加锁, 可以与 ACL_FLOCK_OP_SHARED, 或 ACL_FLOCK_OP_EXCLUSIVE 相与, 可以与 ACL_FLOCK_OP_SHARED 相与

在文件 acl_myflock.h37 行定义.

◆ ACL_FLOCK_OP_SHARED

#define ACL_FLOCK_OP_SHARED   1

共享锁

在文件 acl_myflock.h30 行定义.

◆ ACL_FLOCK_STYLE_FCNTL

#define ACL_FLOCK_STYLE_FCNTL   2

调用 fcntl 函数加锁(unix)

在文件 acl_myflock.h24 行定义.

◆ ACL_FLOCK_STYLE_FLOCK

#define ACL_FLOCK_STYLE_FLOCK   1

调用 flock 函数加锁(unix)

在文件 acl_myflock.h23 行定义.

函数说明

◆ acl_myflock()

ACL_API int acl_myflock ( ACL_FILE_HANDLE  fd,
int  lock_style,
int  operation 
)

对打开的文件句柄进行加锁

参数
fd{ACL_FILE_HANDLE} 文件句柄
lock_style{int} 系统提供的API加锁类型(仅对UNIX有效) ACL_FLOCK_STYLE_FLOCK or ACL_FLOCK_STYLE_FCNTL
operation{int} 加锁操作方式, ACL_FLOCK_OP_XXX
返回
{int} 0: 加锁成功; -1: 加锁失败