Swift 6中AVPlayer添加periodicTimeObserver是否会引发内存泄漏?
AVPlayer周期性时间观察者的并发警告与内存泄漏问题
- 应用基于AVPlayer实现播放进度监听,采用periodic time observer方案,代码参考苹果官方文档实现。
- 开启「complete」并发检查后,
player.addPeriodicTimeObserver调用处出现警告;若将包含该方法的类标记为@Sendable,会直接触发报错:
- 应用存在严重内存泄漏问题,播放过程中内存占用大幅增长,怀疑该问题与periodic time observer的使用有关:

核心代码实现
private func addPeriodicTimeObserver() { guard let player = player else { return } let interval = CMTime(value: 1, timescale: 24) timeObserverToken = player.addPeriodicTimeObserver(forInterval: interval, queue: .main) { [weak self] time in guard let self = self else { return } self.onTimeUpdate?(time) } }
内容的提问来源于stack exchange,提问作者user1542125
相关产品推荐
相关产品推荐

