Ios 是否可以初始化优先级更高的应用程序?

Ios 是否可以初始化优先级更高的应用程序?,ios,multithreading,process,pthreads,Ios,Multithreading,Process,Pthreads,我在iOS上有一个应用程序,并在实时pthread中生成一个MIDI时钟。如果我有时在应用程序和其他应用程序之间切换,时钟就不再准确->因此我的想法:增加优先级/nice值可能会解决这个问题。但是如何更改iOS上代码的优先级呢?NSThread类有一个方法,或者您可以使用GCD高优先级队列 但是,如果它能使WRT计时发生很大的变化,我会感到惊讶。您应该使用MIDI数据包列表,这是一种iOS内部机制,用于发送带有准确时间戳的MIDI数据,在几乎任何情况下都是非常精确的(我已经开发了一个用于iOS的

我在iOS上有一个应用程序,并在实时pthread中生成一个MIDI时钟。如果我有时在应用程序和其他应用程序之间切换,时钟就不再准确->因此我的想法:增加优先级/nice值可能会解决这个问题。但是如何更改iOS上代码的优先级呢?

NSThread类有一个方法,或者您可以使用GCD高优先级队列


但是,如果它能使WRT计时发生很大的变化,我会感到惊讶。

您应该使用MIDI数据包列表,这是一种iOS内部机制,用于发送带有准确时间戳的MIDI数据,在几乎任何情况下都是非常精确的(我已经开发了一个用于iOS的MIDI序列器,使用这些数据)。

谢天谢地,不,应用程序不可能被赋予比其他应用程序更高的优先级。但这应该是可能的。如果您使用例如SystemMonitor,您将发现具有更高优先级的应用程序和进程(例如Launchkey a Novation应用程序)。这只会更改应用程序内线程的优先级,对调度与其他应用程序没有任何影响,这是OP的问题。@David,你确定线程调度是在每个进程的基础上进行的(即线程优先级只在该进程中起作用)?相对确定,是的。重新阅读NSThread文档并不会真正添加关于该主题的任何信息,但从历史上看,我使用过的大多数Unice都是这样。由于内核级线程实现为mach线程,这可能会发生变化,但我并不这么认为。我不希望我的note应用程序将其自身的优先级提高到最大,并耗尽我的手机应用程序;如果允许的话,内核将被破坏,但是我认为如果不研究内核调度代码,就无法确定线程优先级对全局的影响。然而,我不允许为了使某些事情工作而提高线程优先级,所以我真的不太在乎;我只是想知道你的评论是否像听起来那样权威。