微信新增 FD 接口,文件读写更快

IT之家6月2日消息 , 文件操作太麻烦?文件读写速度太慢?……
随着文件系统本地存储容量的不断扩大 , 文件操作的流程与速度成为开发者们日益关注的重点 。 为了实现小程序/小游戏更高效、更原子化的文件操作效果 , 微信团队新增FD接口 , 优化小程序用户体验:
支持一次打开文件即可多次读/写 , 减少重复操作
支持只读/写指定内容 , 减少无效读写
实现读写耗时降低46% , 提升体验
微信新增 FD 接口,文件读写更快
文章图片
FD接口是什么FD接口是微信团队新增的高性能、原子化的文件接口类型 。 对比原有文件接口 , FD接口不仅增加打开文件与关闭文件2个接口 , 而且更新代码实现方式 , 快速提升小程序性能 。
FD接口有多强FD接口支持一次打开文件 , 即可进行多次读/写操作 。 对比原有文件接口每项操作均需要打开、写入、关闭文件3个步骤 , FD接口实现一次打开文件 , 即可多次读取、写入文件 , 操作完成再关闭文件 , 减少重复操作 。
FD接口支持只读/写文件中指定内容 。 针对大文件操作场景 , FD接口的该项特性能够减少无效读写 , 降低文件读写时间 。 如下图例子 , 原有文件接口需要全部读/写内容(如左下图黄色高亮内容) , FD文件接口则支持只读/写指定内容(如右下图黄色高亮内容) , 降低读写耗时 。
以连续100次读+写同一个文件(1MB)的实验为例 , 对比原有接口读写文件耗时 , FD接口在安卓端读写文件耗时降低46% , 在iOS端读写耗时降低19% 。
FD接口怎样用FD接口减少重复操作、减少无效读写 , 降低文件读写耗时 。 那么如何正确应用FD接口?
以打开文件、读取文件内容、修改内容并写入文件的过程为例 , 原有接口需要每次读写文件并且完整打开关闭 。
//获取全局唯一的文件管理器constfs=wx.getFileSystemManager()//读取文件data=https://pcff.toutiao.jxnews.com.cn/p/20220602/fs.readFileSync(“FileA”)//修改文件内容data=modify(data)//写入文件fs.writeFileSync(“FileA”,data)如果仅应用于简单的文件操作流程 , 原有文件接口仍可适用 。 但面向大量文件操作的场景 , 原有文件接口造成读写耗时较长 , 同时影响低端机型的性能 , 影响用户体验 。 因此FD接口一次打开、多次执行的特性能够高效解决问题 , 代码示例如下:
//获取全局唯一的文件管理器constfs=wx.getFileSystemManager()//打开文件fd=fs.openSync(“FileA”)//读取文件fs.readSync({fd,arrayBuffer,offset,length,position})//修改文件内容data=https://pcff.toutiao.jxnews.com.cn/p/20220602/modify(data)//写入文件fs.writeSync({fd,data,offset,length,position})//关闭文件fs.closeSync({fd:fd})面对文件系统本地存储容量的不断扩大的场景 , FD接口支持一次打开文件即可多次读/写 , 并且支持只读/写指定内容 , 实现文件读写耗时减少近50% , 提升用户体验 。
微信新增 FD 接口,文件读写更快】大家在IT之家微信号回复“微信”两字 , 即可获取当前最新官方内部版微信下载 。
微信新增 FD 接口,文件读写更快
文章图片
微信新增 FD 接口,文件读写更快
文章图片