FILE *与FD的区别

1 篇文章 0 订阅
本文探讨了FILE*和文件描述符(FD)在进行文件操作时的效率差异。FILE*通过writev、readv等接口允许一次性处理多个不连续内存块,减少了系统调用,提高了程序执行效率。而FD在处理不连续内存时需要多次调用syscall,效率相对较低。理解这些差异对于优化I/O密集型应用至关重要。
摘要由CSDN通过智能技术生成

文章目录

  1. FILE *是文件流操作,目的是为了提高程序的执行效率,相关的接口如:writev、readv,这两个函数可以读写大块数据。
  2. FD是文件描述符,只能读写数据到一块内存中。若通过FD读写不连续的内存块,write、read需要多次调用syscall,这样就增加了额外的系统开销,导致效率并不高;但是,通过文件流的方式,比如writev、readv,即可实现调用一次syscall,可完成多块不连续内存块的读写操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值