UNIX环境高级编程学习之第十六章网络IPC:套接字 – 套接字选项的使用 (心跳检测、绑定地址复用)

Linux/Unix C/C++ xiujie 226℃ 0评论 已收录

UNIX环境高级编程学习之第十六章网络IPC:套接字 – 套接字选项的使用 (心跳检测、绑定地址复用)

/* 设置套接字选项周期性消息检测连通性 心跳包、 心博。主要用于长连接。
 * 参数:套接字, 1或0开启, 首次间隔时间, 两次间隔时间, 断开次数
 */
void setKeepAlive( int iSockfd , int iSockAttrOn, socklen_t iIdleTime , socklen_t iInterval , socklen_t iCount ){
    setsockopt( iSockfd , SOL_SOCKET , SO_KEEPALIVE , (const char*)&iSockAttrOn , sizeof(iSockAttrOn) );
    setsockopt( iSockfd , SOL_TCP , TCP_KEEPIDLE , (const char*)&iIdleTime , sizeof(iIdleTime) );
    setsockopt( iSockfd , SOL_TCP , TCP_KEEPINTVL , (const char*)&iInterval,sizeof(iInterval) );
    setsockopt( iSockfd , SOL_TCP , TCP_KEEPCNT , (const char*)&iCount,sizeof(iCount) );
}
/* 绑定地址复用. 主要用于TCP Server端 */
setsockopt(iSockfd, SOL_SOCKET, SO_REUSEADDR, &iSockAttrOn,sizeof(iSockAttrOn) );

喜欢 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址