gpt4 book ai didi

ios - 如何保证进程在 iOS 中的准确时间启动

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:27 25 4
gpt4 key购买 nike

我们正在按时间间隔 (bpm) 播放节拍器音频文件,同时录制音频文件。但是目前两个线程的开始时间并不完全同时,有细微的时间差,这对于音乐来说是不允许的。

我们可以使用什么策略来保证两个进程同时启动(或在几毫秒内)?

谢谢!

最佳答案

我可以想到三种方法来完成这项工作(但显然我从未测试过它们)。

你的每个线程都应该预先完成所有的初始化,然后等待一个“事件”。我能想到的几个计时事件:

  • 使用通知 - 两个线程都监听一些“开始”通知。这应该相当快。

  • 让两个线程都进行 keyValue 监听 - 所以它们都在监听已知对象上某些属性的更改,例如 appDelegate(或单例),或它们都知道的任何对象(委托(delegate)?)

  • 初始化完成后,让每个人都调用一个委托(delegate)。当两者都“准备好”时,代理可以向每个人发送一条消息,一个接一个(在主线程上)以“开始”。

您还可以尝试使用 NSLock 和 friend - 不确定您会得到什么样的延迟。 Key-Value Observing 非常快速且轻量级,适用于任何线程。

关于ios - 如何保证进程在 iOS 中的准确时间启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20407800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com