问个菜鸟级的问题,recv和read区别

zdd198410 2009-07-03 08:35:42
问个菜鸟级别的问题,在linux的socket中,接受数据可以用recv 和read,那么这两个函数有什么区别呢?希望能从阻塞和非阻塞SOCKET两种情况下,帮忙解释下。
...全文
529 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Littledede 2011-03-03
  • 打赏
  • 举报
回复
flags 貌似为0时是选择默认的协议,如果不是0的话,选择特定的协议。
hannyhe 2010-10-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wiresharker 的回复:]
int recv(int sockfd,void *buf,int len,int flags)

recv 比read 的功能强大点,体现在recv提供的flags参数上,
recv最终的实现还是要调用read。

recv和read都可以操作阻塞或非阻塞,阻塞非阻塞与recv和read没关系,它是socket的属性,函数fcntl可以设置。
[/Quote]

flags参数怎么用啊,多说两句啊
xjpresley 2009-07-05
  • 打赏
  • 举报
回复
windows 下没有 read
hhwei1985 2009-07-04
  • 打赏
  • 举报
回复
MSDN
wiresharker 2009-07-04
  • 打赏
  • 举报
回复

int recv(int sockfd,void *buf,int len,int flags)

recv 比read 的功能强大点,体现在recv提供的flags参数上,
recv最终的实现还是要调用read。

recv和read都可以操作阻塞或非阻塞,阻塞非阻塞与recv和read没关系,它是socket的属性,函数fcntl可以设置。

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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