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

浏览源代码.

宏定义

#define ACL_SOCKET_RBUF_SIZE   204800
 
#define ACL_SOCKET_WBUF_SIZE   204800
 

函数

ACL_API void acl_tcp_set_rcvbuf (ACL_SOCKET fd, int size)
 
ACL_API void acl_tcp_set_sndbuf (ACL_SOCKET fd, int size)
 
ACL_API int acl_tcp_get_rcvbuf (ACL_SOCKET fd)
 
ACL_API int acl_tcp_get_sndbuf (ACL_SOCKET fd)
 
ACL_API void acl_tcp_set_nodelay (ACL_SOCKET fd)
 
ACL_API void acl_tcp_nodelay (ACL_SOCKET fd, int onoff)
 
ACL_API int acl_get_tcp_nodelay (ACL_SOCKET fd)
 
ACL_API void acl_tcp_so_linger (ACL_SOCKET fd, int onoff, int timeout)
 
ACL_API int acl_get_tcp_solinger (ACL_SOCKET fd)
 
ACL_API void acl_tcp_defer_accept (ACL_SOCKET fd, int timeout)
 
ACL_API void acl_tcp_fastopen (ACL_SOCKET fd, int on)
 

宏定义说明

◆ ACL_SOCKET_RBUF_SIZE

#define ACL_SOCKET_RBUF_SIZE   204800

缺省读缓冲区大小

在文件 acl_tcp_ctl.h10 行定义.

◆ ACL_SOCKET_WBUF_SIZE

#define ACL_SOCKET_WBUF_SIZE   204800

缺少写缓冲区大小

在文件 acl_tcp_ctl.h11 行定义.

函数说明

◆ acl_get_tcp_nodelay()

ACL_API int acl_get_tcp_nodelay ( ACL_SOCKET  fd)

获得 TCP 套接字是否设置了 nodelay 选项

参数
fd{ACL_SOCKET} 套接字
返回
{int} 1 表示打开,0 表示关闭

◆ acl_get_tcp_solinger()

ACL_API int acl_get_tcp_solinger ( ACL_SOCKET  fd)

获得 TCP 套接字的 linger 值

参数
fd{ACL_SOCKET} 套接字
返回
{int} 返回 -1 表示未设置 linger 选项或内部出错,>= 0 表示设置了 linger 选项且该值表示套接字关闭后该 TCP 连接在内核中维持 TIME_WAIT 状态 的逗留时间(秒)

◆ acl_tcp_defer_accept()

ACL_API void acl_tcp_defer_accept ( ACL_SOCKET  fd,
int  timeout 
)

设置监听套接字的延迟接收功能,即当客户端连接上有数据时才将该连接返回 给应用,目前该功能仅支持 Linux

参数
fd{ACL_SOCKET} 套接字
timeout{int} 如果客户端连接在规定的时间内未发来数据,也将该连接返回 给应用

◆ acl_tcp_fastopen()

ACL_API void acl_tcp_fastopen ( ACL_SOCKET  fd,
int  on 
)

设置监听套接字的快速建立 TCP 连接过程(需要内核支持)

参数
fd{ACL_SOCKET}
on{int} 非 0 时打开此功能,否则关闭此功能

◆ acl_tcp_get_rcvbuf()

ACL_API int acl_tcp_get_rcvbuf ( ACL_SOCKET  fd)

获取 TCP 套接字的读缓冲区大小

参数
fd{ACL_SOCKET} 套接字
返回
{int} 缓冲区大小

◆ acl_tcp_get_sndbuf()

ACL_API int acl_tcp_get_sndbuf ( ACL_SOCKET  fd)

获取 TCP 套接字的写缓冲区大小

参数
fd{ACL_SOCKET} 套接字
返回
{int} 缓冲区大小

◆ acl_tcp_nodelay()

ACL_API void acl_tcp_nodelay ( ACL_SOCKET  fd,
int  onoff 
)

设置 TCP 套接字的 nodelay 功能

参数
fd{ACL_SOCKET} 套接字
onoff{int} 1 表示打开,0 表示关闭

◆ acl_tcp_set_nodelay()

ACL_API void acl_tcp_set_nodelay ( ACL_SOCKET  fd)

打开 TCP 套接字的 nodelay 功能

参数
fd{ACL_SOCKET} 套接字

◆ acl_tcp_set_rcvbuf()

ACL_API void acl_tcp_set_rcvbuf ( ACL_SOCKET  fd,
int  size 
)

设置 TCP 套接字的读缓冲区大小

参数
fd{ACL_SOCKET} 套接字
size{int} 缓冲区设置大小

◆ acl_tcp_set_sndbuf()

ACL_API void acl_tcp_set_sndbuf ( ACL_SOCKET  fd,
int  size 
)

设置 TCP 套接字的写缓冲区大小

参数
fd{ACL_SOCKET} 套接字
size{int} 缓冲区设置大小

◆ acl_tcp_so_linger()

ACL_API void acl_tcp_so_linger ( ACL_SOCKET  fd,
int  onoff,
int  timeout 
)

设置 TCP 套接字的 SO_LINGER 选项

参数
fd{ACL_SOCKET} 套接字
onoff{int} 是否启用 SO_LINGER 选项
timeout{int} 当SO_LINGER打开时,取消 timed_wait 的时间,单位为秒