当前位置:  技术问答>linux和unix

求救:如何用select解决recv的阻塞问题

    来源: 互联网  发布时间:2015-09-27

    本文导语:  当一个文件接收完毕后如何使recv不阻塞呢? | 引入超时函数,代码如下 * Waits for a file descriptor to change status or unblocked signal * @paramfdfile descriptor * @paramtimeoutseconds to wait before timing...

当一个文件接收完毕后如何使recv不阻塞呢?

|
引入超时函数,代码如下

* Waits for a file descriptor to change status or unblocked signal

* @paramfdfile descriptor

* @paramtimeoutseconds to wait before timing out or 0 for no timeout

* @return1 if descriptor changed status or 0 if timed out or -1 on error

*/

int

waitfor(int fd, int timeout)

{

fd_set rfds;

struct timeval tv = { timeout, 0 };



FD_ZERO(&rfds);

FD_SET(fd, &rfds);

return select(fd + 1, &rfds, NULL, NULL, (timeout > 0) ? &tv : NULL);

}

|
fcntl(fileno(stream), F_SETFL, flags | O_NONBLOCK);

设置为NONBLOCK模式!

    
 
 

您可能感兴趣的文章:

  • 求救:修改系统启动脚本 不过脚本里面误写了阻塞命令
  • 高分求救:我的solaris8如何进行网络配置?解决立即送分!
  • Linux菜瓜求救:我在用KDE打开网页浏览器时出错:无法为:text/html创建视图,如何解决?
  • 关于tftp的问题,搞了好久都没有解决,求救!~~!!
  • 新手求救:安装yum时提示缺少yumconf,如何解决? iis7站长之家
  • java调用dll的问题???至今没有解决!!!求救!!!
  • 100分,求救-webshpere里面如何调用CGI??在先等待,解决就结帖。
  • 高分求救!!为什么我采取升级方式安装rpm时老是出错!(在线等候,解决了马上给分100)
  • 停电后,再开服务器,LINUX就出问题了。大家帮忙解决呀。高分求救
  • (紧急求救在线等待解决就给分)我在JBuilder下的实体ejb中建立发现器或选择器编译的时候总是报告EJBQL不能处理可是EJBQL似乎没有错(按
  • 初学者求救.对于你们只一秒钟就可以解决的问题,我就是搞不定!!!!!!
  • 用尽的resultset!!!!怎么解决?喷血求救!!!!
  • 求救,Linux内核2.6.32启动问题。。。。查了不少资料,还没解决!
  • 高分求救!我在uclinux上运行应用程序时出现内存分配错误,不知如何解决,解决者高分!!
  • 在ubuntu7.10下安装软件出现的问题,各种方法都无法解决……求救
  • 求救!安装了linux后不能启动window,为什么?如何解决?
  • 高分求救,解决必给分!!!!
  • Linux 安装 问题//在网上找了很多答案也没能解决.求救各位
  • 求救redhat 安装找不到硬盘的完整解决方案
  • 求救!发现X11GraphicsEnvironment错误!解决者500分重奖!!
  • 一万分求救::还是装win2000后,linux无法启动(问题解决后狂散分)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求救!求救!紧急求救!为什么更新不了所指定的内容?
  • 求救!!!硬件高请进、、、、、、(十万火急,高分求救。)
  • 求救求救!!
  • 求救啊 高分求救 UNIX下关于进程通讯的问题~
  • 求救!!!求救!!!机器不能正常启动
  • 关于jdbc,求救求救!在线等待,马上给分
  • 紧急求救,root用户无权限删除文件
  • 晕,特晕...求救...
  • 高分求救~~如何取得linux下进程完整命令行字符串,就是的ps -ef 完整的全路径的CMD那一列,求救!!!!附现在的代码
  • 求救!weblogic6.0后台运行正确,前台页面跳转或调用其他页面时出“页面无法显示错误”
  • 求救:java里如何取整一个浮点数(不做四舍五入)
  • 紧急求救!!
  • Linux下无法启动apache 高分求救!在线等待
  • 紧急求救 我用freebsd通过smbfs连接win2000的一些问题 (分不够可加)
  • 紧急求救 我用freebsd通过smbfs连接win2000的一些问题
  • 求救,linux和windows之间如何联成局域网(设置),并且相互之间移动文件。
  • 求救!!在Redhat7.3下安装scim0.9.3怎么安装?
  • Linux8.0 修改字符集后,再次进系统,无图形界面问题。。。求救。。
  • SUSE网络打印机问题,在线等,求救!!
  • 散分一百,紧急求救!ROOT密码忘记


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3