C++ 如何在Mac OS上设置线程优先级pthreads

C++ 如何在Mac OS上设置线程优先级pthreads,c++,pthreads,C++,Pthreads,我发现: pthread_setschedprio() 在这里: 但是我找不到线程优先级的任何有效值。对于Windows,我发现了非常明确的可能价值,如: THREAD_PRIORITY_BELOW_NORMAL THREAD_PRIORITY_NORMAL THREAD_PRIORITY_ABOVE_NORMAL 但对于Mac OS,我什么也没找到。我不能使用Cocoa NSThreads类,我需要使用POSIX线程 您知道如何在Mac OS上设置线程优先级pthread吗?虽然我当然同

我发现:

pthread_setschedprio() 
在这里:

但是我找不到线程优先级的任何有效值。对于Windows,我发现了非常明确的可能价值,如:

THREAD_PRIORITY_BELOW_NORMAL
THREAD_PRIORITY_NORMAL
THREAD_PRIORITY_ABOVE_NORMAL
但对于Mac OS,我什么也没找到。我不能使用Cocoa NSThreads类,我需要使用POSIX线程


您知道如何在Mac OS上设置线程优先级pthread吗?

虽然我当然同意上面关于避免修改线程优先级或调度以解决问题的评论,但您可能希望首先阅读pthread_getschedparam的手册页,其中讨论了调度,并显示了OS X下最小/最大优先级设置的一些值。然后,重新思考您的问题,不要使用线程优先级来解决它

你试过任何整数值吗?我只想提醒你,大多数使用线程优先级或认为应该使用它们的人真的不想这样做,而使用它们只会让事情变得更糟。它们不会使优先级更高的线程运行得更快,并且会引入各种潜在的微妙问题,例如。相反,只需将线程编码为只做您想做的工作。设置线程优先级是有正当理由的。(这就是函数存在的原因。)说“阅读一些文档,然后不要做”可以作为一个注释,但它不是一个答案。