多线程程序优先级设定
int main()
{
int i,N=30000;
#pragma parallel for num_threads(20)
for(i=0;i<N;i++)
{
test();
}
test()的运算量很大,系统有24个核心。如果在这个程序运行时候,我希望一直是20个核心%100的执行这个程序,其它人再运行其它程序的时候不会影响我这个程序的运行(即,不会占用我的程序用到的核心)。怎么实现呢?如何设定执行优先级?如何更改呢? 多线程 Parallel 优先级 C/C++
[解决办法]
不太懂,但是要改线程优先级,就要在创建线程的时候添加线程属性参数,并将进程的调度方式改为FIFO或者RR.
[解决办法]
那就是我说的创建线程的时候添加线程属性,pthread_attribute,属性里有个数值可以设置1-99 你设置成最高的就好了.
[解决办法]
linux的线程优先级貌似不管用吧
[解决办法]