当前位置:   article > 正文

聊天小项目(二)read阻塞问题解决_cap.read() 阻塞 解决办法

cap.read() 阻塞 解决办法

一般情况下,都为阻塞

 

阻塞情况下,客户端发送的消息服务端无法接受。改用recv替换read。

 

这样改也是不行的,因为套接字接收与发送都是默认为阻塞模式,所以多方通信需要套接字描述符为非阻塞方式。需要改变套接字的文件属性。

  1. // 设置非阻塞方式
  2. flags = fcntl(new_fd, F_GETFL, 0);
  3. fcntl(new_fd, F_SETFL, flags | O_NONBLOCK);

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/280255
推荐阅读
相关标签
  

闽ICP备14008679号