C ++用于设置核心亲和力的习惯用法是什么?

时间:2018-06-11 07:39:09

标签: c++ boost multicore idioms affinity

请考虑以下代码:

cpu_set_t cpuset; 

CPU_ZERO(&cpuset);
CPU_SET(0, &cpuset);
sched_setaffinity(0, sizeof(cpuset), &cpuset);

这设置了进程的处理器关联性 - 基本上允许对其进行调度的核心。它使用GNU C library facility(但我不确定在支持glibc的所有操作系统上是否支持它)。现在,我很确定C ++标准库并没有提供类似的功能,但是 - 用同样的东西做什么是常见的,更多C ++的习惯用法?

1 个答案:

答案 0 :(得分:2)

C ++标准库中没有这样的功能。另请注意,C标准库中也没有此类功能。它由glibc提供,但不是作为C标准库的角色:它是Linux的一部分,而不是C标准。