版权所有 © 2014 tutorialspoint
#define _GNU_SOURCE #include <fcntl.h> long splice(int fd_in, off_t *off_in, int fd_out, off_t *off_out, size_t len ", unsigned int " flags );
long splice(int fd_in, off_t *off_in, int fd_out, off_t *off_out, size_t len ", unsigned int " flags );
如果fd_in指向管道,则off_in必须为NULL。如果fd_in不指向管道且off_in为NULL,则从当前文件偏移量开始读取fd_in中的字节,并相应调整当前文件偏移量。如果fd_in不指向管道且off_in不为NULL,则off_in必须指向一个缓冲区,该缓冲区指定从fd_in读取字节的起始偏移量;在这种情况下,fd_in的当前文件偏移量不会更改。类似的陈述适用于out_fd和off_out。
flags参数是一个位掩码,它由将以下一个或多个值组合在一起形成。
发生错误时,splice()返回-1,并设置errno以指示错误。
sendfile (2)
splice (2)
tee (2)
广告