我有一个多线程项目。我想将 CPU 亲和性设置为特定线程。我在 Windows 上工作并使用 MinGW 编译器。但是当我初始化类型 cpu_set_t 时,我有一个错误“类型 cpu_set_t 未在此范围内声明”。我不明白原因。我期待你的帮助!谢谢你!
#define _GNU_SOURCE
#include <iostream>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sched.h>
int main()
{
int core_id = 1;
cpu_set_t cpuset; // error here
CPU_ZERO(&cpuset);
CPU_SET(core_id, &cpuset);
pthread_t current_thread = pthread_self();
pthread_setaffinity_np(current_thread, sizeof(cpu_set_t), &cpuset);
}