给出有问题代码!请大虾帮看看!Linux下客户端socket(TCP阻赛方式),为什么设置不了超时!

ecwaychina 2006-07-06 03:53:11
int timeout = 15000;
if (setsockopt(sockfd,SOL_SOCKET,SO_RCVTIMEO,(char *)&timeout,sizeof(int))== -1){
write_normal_msg(" do_iptvclient_socket: Set Socket Receive timeout fail");
}
else
{
write_normal_msg(" do_iptvclient_socket: Set Socket Receive timeout Success");
}
if (setsockopt(sockfd,SOL_SOCKET,SO_SNDTIMEO,(char *)&timeout,sizeof(int))== -1){
write_normal_msg(" do_iptvclient_socket: Set Socket Send timeout fail");
}
else
{
write_normal_msg(" do_iptvclient_socket: Set Socket Send timeout Success");
}
...全文
144 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
linaxing 2006-07-06
  • 打赏
  • 举报
回复
超时值应该是一个timeval结构,而不是一个整形值。具体结构可以看select的man手册,它也使用了这个结果。
ecwaychina 2006-07-06
  • 打赏
  • 举报
回复
总是报错!
write_normal_msg(" do_iptvclient_socket: Set Socket Receive timeout fail");
write_normal_msg(" do_iptvclient_socket: Set Socket Send timeout fail");

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧