功能需求

Apple 系统中(iOS、MacOS、WatchOS等等)读取文件是一个平常的不能再平常的需求,不过当文件很大时,同步读取文件会导致 UI 的挂起,这是不能让用户接受的。

所以,要想读取文件内容的同时保持界面操作丝般顺滑,只有使用异步文件读取技术来拯救我们了!

在本篇博文中,我们将会用 4 种方法来实现文件内容的异步读取。

在读取大小为 1.58GB 的文件时,最快方法比最慢方法快了将近 50 倍,仅需 0.13 秒,而这仅是在 Xcode(SwiftUI) 预览中的结果,真机还会更快!

So,废话少叙!

Let‘s work it out!!!😉

功能分析

1. 准备测试代码

我们准备一个大小为 1.58GB 的 big.zip 文件,将它放入 Xcode 项目的资源目录中,之后所有的测试都会读取该文件。

下面是测试代码,在每个后续测试里我们大部分的修改都在 ContentView 的 read() 方法中:

// AnimView 用来观察界面的挂起

struct

相关阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: