我必须通过硬件Midi控制器移动一些NSSlider
,我已经编写了一个Midi学习程序,将硬件光标分配给NSSlider
(子类),然后就可以了。在MIDIReadProc
内部,我根据所输入的控件和值来处理NSSlider
的移动,但是现在当我移动硬件光标时,滑块可以随时间移动一个,就像移动光标停止其他移动一样。
我的问题是,同时处理光标移动的最佳策略是什么?
1。我是否必须使用单独的线程处理?
2。我是否应该具有一个FIFO
的MIDIPacket
数据结构并在MIDIReadProc
之外进行处理(使用一些并发分离的过程)?
对不起我的英语。
感谢您的关注。
一个。
最佳答案
您不应在MIDIReadProc
回调中进行任何UI同步。
从高优先级实时线程调用此回调,因此您必须避免在其中执行可能“太长”的任何操作。
如您所说,您可以使用FIFO并在另一个线程(例如主线程)中对其进行处理。
关于objective-c - 处理 cocoa 中MIDIReadProc传入的Midi信号的最佳策略,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12930024/