在 Audiokit 中运行某些 AUv3 实例时,定时器可能会发生冲突。这通常是由于多个 AUv3 实例尝试在同一时间内占用同一组定时器所致。解决此问题的一种方法是为每个 AUv3 实例分配单独的定时器组。为此,可以在该 AUv3 实例的初始化方法中添加以下代码:
let timer = AKTimeline()
self.auAudioUnit.tokenByAdding(to: timer)
此代码将创建一个新的 AKTimeline 定时器并将其添加到 AUv3 实例的定时器组中。这将确保每个 AUv3 实例都有自己独立的定时器组,从而避免冲突。