iovec
基本介绍
包含在头文件#include <sys/uio.h>
中的一个结构体
其定义如下
struct iovec
{
void* iov_base; //指向数据的地址
size_t iov_len; //数据的长度
};
其实就是一个指向一块内存的指针,同时携带了数据长度而已
干嘛用的
服务于以下两个函数
int readv(int fd, const struct iovec *vector, int count);
int writev(int fd, const struct iovec *vector, int count);
fd
:要在其上进行读或是写的文件描述符。vector
:读或写所用的I/O向量元素,其实就是多个指针,指向多块内存。count
:要使用的向量元素个数,就是有几块内存。
readv
从文件描述符fd所指代的文件中读取一片连续的字节,然后将其分散放置到iov指定的缓存区中。这一散置动作从 iov[0] 开始,依次填满整个缓存区
writev
将iov所指定的所有缓存区中的数据拼接起来,然后以连续的字节序列写入文件描述符fd指代的文件中
标签:count,struct,int,iov,fd,iovec,结构 From: https://www.cnblogs.com/beishangeyu/p/17624180.html