图像缓存与分布式系统开发实践
图像缓存机制完善
在项目中,强大的图像缓存机制已基本构建完成,但仍有一些任务待完成。
添加缓存命中计数器
为了调试缓存机制,需要激活提要屏幕底部的工具栏。该工具栏左侧有两个按钮,分别用于清除磁盘缓存和内存缓存,右侧是缓存命中计数器,显示从磁盘和内存加载的资源数量。
具体操作步骤如下:
1. 添加异步流 :打开 ImageLoader.swift ,添加以下新属性:
@MainActor private(set) var inMemoryAccess: AsyncStream<Int>?
private var inMemoryAcccessContinuation:
AsyncStream<Int>.Continuation?
private var inMemoryAccessCounter = 0 {
didSet { inMemoryAcccessContinuation?.yield(inMemoryAccessCounter) }
}
这里添加了一个在主 actor 上运行的异步流 inMemoryAccess ,视图可安全访问和订阅该属性。同时,利用 ImageLoader 的 actor 语义保护 inMemoryAccessCounter ,并将流延续存储在 inMemoryA
图像缓存与分布式系统开发
超级会员免费看
订阅专栏 解锁全文
58

被折叠的 条评论
为什么被折叠?



