13 多种IO函数

1. send函数

#include <sys/socket.h>

ssize_t send(int sockfd,const void *buf,size_t nbytes, int flags);

成功时返回发送的字节数,失败-1

sockfd:数据传输对象的套接字文件描述符
buf:保存数据的缓冲地址值
nbytes:待传输的字节数
flags:传输数据时指定的可选项

2. recv函数

#include <sys/socket.h>

ssize_t recv(int sockfd, void *buf, size_t nbytes, int flags)

成功时返回接收的字节数,受到EOF返回0,失败返回-1

sockfd:接收对象的套接字文件描述符
buf:保存接收数据的缓冲地址值
nbytes:可接收的最大字节数
flags:接收数据时指定的可选项信息

3. 可选项信息


4. MSG_OOB发送紧急消息:用于创建特殊发送方法和通道以发送紧急信息。

通过MSG_OOB可选项传递数据不会加快数据传输速度,而且通过信号处理函数也只能读取1字节,剩余数据只能通过未设置MSG_OOB的普通输入函数读取。这是因为TCP不存在真正的“带外数据”,只是利用TCP的紧急模式进行传输。

5. MSG_PEEK结合recv,即使读取了输入缓冲的数据也不会删除。

MSG_PEEK,MSG_DONTWAIT用于调用以非阻塞方式验证待读数据存在与否的函数。


6. writev:将分散保存在多个缓冲的数据一并发送;readv由多个缓冲分别接收。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值