PRSocketOptionData¶
用于与 PR_GetSocketOption 和 PR_SetSocketOption 一起使用的结构体类型,用于指定表示套接字的文件描述符的选项。
语法¶
#include <prio.h>
typedef struct PRSocketOptionData
{
PRSockOption option;
union
{
PRUintn ip_ttl;
PRUintn mcast_ttl;
PRUintn tos;
PRBool non_blocking;
PRBool reuse_addr;
PRBool keep_alive;
PRBool mcast_loopback;
PRBool no_delay;
PRSize max_segment;
PRSize recv_buffer_size;
PRSize send_buffer_size;
PRLinger linger;
PRMcastRequest add_member;
PRMcastRequest drop_member;
PRNetAddr mcast_if;
} value;
} PRSocketOptionData;
字段¶
该结构体包含以下字段
ip_ttlIP 生存时间。
mcast_ttlIP 多播生存时间。
tosIP 服务类型和优先级。
non_blocking非阻塞(网络)I/O。
reuse_addr允许本地地址重用。
keep_alive定期测试连接是否仍然存活。
mcast_loopbackIP 多播回环。
no_delay禁用 Nagle 算法。不要延迟发送以合并数据包。
max_segmentTCP 最大分段大小。
recv_buffer_size接收缓冲区大小。
send_buffer_size发送缓冲区大小。
linger如果套接字发送缓冲区中存在数据,则在关闭时保持连接的时间。
add_member加入 IP 多播组。
drop_member离开 IP 多播组。
mcast_ifIP 多播接口地址。
描述¶
PRSocketOptionData 是套接字选项的键值对。 option 字段(枚举类型 PRSockOption)指定套接字选项的名称,而 value 字段(所有可能值的联合)指定选项的值。