• 全部
  • 系统维护与使用
  • 应用程序开发
  • 内核源代码
  • 驱动程序开发
  • CPU和硬件区
  • UNIX文化
  • Solaris
  • Power Linux
  • 问答

给出有问题代码!请大虾帮看看!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");
}
...全文
104 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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");
回复
发帖
Linux/Unix社区
创建于2007-08-27

2.0w+

社区成员

Linux/Unix社区 应用程序开发区
申请成为版主
帖子事件
创建了帖子
2006-07-06 03:53
社区公告
暂无公告