在进程中调度线程

Scheduling threads within a process

本文关键字:线程 调度 进程      更新时间:2023-10-16

假设我有一个有4个线程的进程,我希望它们根据特定的调度算法运行。我搜索并找到了用于选择算法和设置线程优先级的pthread_setschedparamsched_setschedparam函数,但我看到了一件不清楚的事情——pthread_setschedparam使用线程名称并设置自己的调度策略。这具体意味着什么,因为我认为进程中的所有线程都是根据一个为整个进程设置的策略进行调度的。这是否意味着,如果我使用sched_setschedparam并设置一个策略(因为它通过进程的PID指代进程),它将确保该进程中的线程根据所选的调度策略运行?

我正在编写的代码是为Linux编写的,我使用了boost,但这部分不得不使用pthreads。

pthread_setschedparam设置单个线程的调度参数。CCD_ 6设置用于整个过程的调度参数。不同的线程确实可以具有不同的调度策略。