获取硬件支持的线程数,以及线程的ID
2018-10-20 本文已影响0人
pandazhong
在做任务调度的时候,要获取CPU能并发支持的线程数,如果超过这个线程,反而有可能因为频繁调度而降低程序的性能。
#include<thread>
#include <stdio.h>
int main()
{
int count = std::thread::hardware_concurrency();
printf("thread count:%d\n" , count);
return 0;
}
获取当前线程的ID如下:
#include<thread>
#include <stdio.h>
#include <iostream>
int main()
{
int count = std::thread::hardware_concurrency();
std::thread::id id = std::this_thread::get_id();
printf("thread count:%d , id:%d\n" , count, id);
return 0;
}