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

unixware里面,如何设定socket接收超时?

qdh2002 2003-07-29 01:47:26
在unixware里面,如何象在aix,windows上面,利用setsockopt里面的接收超时方式控制socket的接收和发送超时??谢谢。

我在unixware下,把aix上的代码移植过去,编译没有问题,但运行时,报参数错误。

struct timeval svTimeOut;
svTimeOut.tv_sec=CONTROL_SOCKET_RECV_TIMEOUT; //设置接收超时
svTimeOut.tv_usec=0;

if(setsockopt(sClient,SOL_SOCKET,SO_RCVTIMEO,(char *)&svTimeOut,sizeof(svTimeOut))==SOCKET_ERROR)
{
sprintf(szDebugMsg,"PID=%d,设置socket接收超时的参数时错误:%s\n",getpid(),strerror(errno));
SendToSyslog(string(szDebugMsg));
}
...全文
14 点赞 收藏 1
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
SuperDay 2003-07-29
恐怕UNIXWARE和SCO UNIX一样不支持超时参数选项,可以用定时信号处理。
alarm(5);
recv(...);
回复
发帖
Linux/Unix社区
创建于2007-08-27

2.0w+

社区成员

Linux/Unix社区 应用程序开发区
申请成为版主
帖子事件
创建了帖子
2003-07-29 01:47
社区公告
暂无公告