Linux中獲取CPU數目確定多線程數

在實際的項目中,尤其是服務器端,需要多線程來處理業務,我們除了可以在配置文件中配置thread number,還可以根據系統CPU 數目來確定甚至是分配線程數。

int GetProcessorNum()
{

	FILE *fstream=NULL;
	char buff[1024];
	memset(buff,0,sizeof(buff));
	if (NULL == (fstream = popen("grep 'processor' /proc/cpuinfo | sort -u | wc -l", "r")))
	{
		return -1;
	}

	fgets(buff, sizeof(buff), fstream);
	int kProcessorNum = atoi(buff);

	pclose(fstream);

	printf("GetProcessorNum = [%d].\n", kProcessorNum);
	return kProcessorNum ;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章