如何解决删除 MIDI 侦听器时 AudioKit v5-main 崩溃
我正在构建一个使用 AudioKit v5 监听传入 MIDI 的应用。
我的 AppDelegate 中有一个 AudioKit MIDI 共享实例,并且我有一个符合 MIDIListener 的类。
该应用程序是一个基于文档的应用程序,当用户关闭文档时,为了释放对我的 MIDIListener 类实例的所有引用,我需要从我的 AudioKit MIDI 共享实例的 listeners 数组中删除每个实例。但是,每当我从 MIDIListener 类实例中调用 appDelegate.midi.removeListener(self)
时,我都会在 MIDIListener 协议的以下行中遇到崩溃:
func == (lhs: MIDIListener,rhs: MIDIListener) -> Bool {
return lhs.isEqualTo(rhs)
}
调用 appDelegate.midi.clearListeners()
不会导致崩溃,但不适合我,因为用户可能有其他打开的带有 MIDIListener 实例的文档,这些文档不想从共享实例 Listeners 数组中删除。
我做错了什么,或者这可能是 AudioKit MIDI 实现的错误?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。