【C#】CPUのコア数を取得する方法
関連記事
- 【#CSharp】C#が2025年「プログラミング言語オブ・ザ・イヤー」獲得 【2026年01月16日(金)】
- なんと!今週の土曜日も仕事してますた.来週の土曜日も仕事臭い.TCPソケット通信をゴリゴリ書いてる 【2025年08月30日(土)】
- 【ChatGPT o4】祝日なのに仕事ーバテすぎー今夜こそ絶命だーモルモルモル 【2025年03月20日(木)】
- 【#CSharp】制御系が動き出したべ 【2025年02月20日(木)】
- 【#CSharp】ひっさしぶりにガッツリなC#案件をやっているぞー 【2025年02月19日(水)】
最近は,弊社リリースのアプリ,マルチスレッドを無意味に多用してたりして?
理想は,コア数と同じ処理スレッド数にするのが,一番効率いいはず
C#なんで,VM関連のバック処理で何本もスレッドが立ち上がってはおるが
んじゃぁ~ってことで,コア数を取ってくる方法を...
と探してみて,行き着いたのが,こちら
マネージドコードでCPUのコア数を知りたい @ MSDNフォーラム
ところが,これ,どうもXPだとちゃんとした値が取れないみたい...
途方にくれて,Win32情報関連辺りを,うろうろさまよっていたら...
Calling API functions using C# @ The Code Project
こちらのページに行き着いて
なんのことはない,Win32の GetSystemInfo() を叩けばいいらしい
SYSTEM_INFO構造体を受け取って
dwNumberOfProcessorsメンバーにコア数が入っているとのこと
ってことで,C#でちょろっと書いてみた
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace CpuCoreCount
{
public partial class Form1 : Form
{
[DllImport("kernel32")]
static extern void GetSystemInfo(ref SYSTEM_INFO ptmpsi);
[StructLayout(LayoutKind.Sequential)]
public struct SYSTEM_INFO {
public uint dwOemId;
public uint dwPageSize;
public uint lpMinimumApplicationAddress;
public uint lpMaximumApplicationAddress;
public uint dwActiveProcessorMask;
public uint dwNumberOfProcessors;
public uint dwProcessorType;
public uint dwAllocationGranularity;
public uint dwProcessorLevel;
public uint dwProcessorRevision;
}
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
SYSTEM_INFO sysInfo = new SYSTEM_INFO();
GetSystemInfo(ref sysInfo);
label1.Text = sysInfo.dwNumberOfProcessors.ToString();
}
}
}
うちのクアッド様@Q6600は,ちゃんと4個テストサーバのPentium Dualは,2個を返してきましたです 🙂

コメント
広島カープの羽月隆太郎容疑者、「ゾンビたばこ」使用の疑いで逮捕
【#総選挙】衆議院選挙 きょう公示 12日間の選挙戦へ
青森 スノーモービル乗るため入山の約10人と連絡取れず 遭難か
【#不発弾】宮崎市中心部の不発弾 17日に処理 避難指示や交通規制予定(26/1/17)
【総選挙】立民 公明 衆院選に向け新党結成で合意(26/1/15)
【大雪】大雪と雷及び突風に関する全般気象情報 第3号(26/1/1)
ブルーレイはオワコン? ソニー生産終了が意味する「次世代メディア」の失敗
ビジネスホテルで火事 1人遺体で見つかる 宿泊客4人けが 水戸
【#ドラセナ】御神木たる幸福の木(ドラセナ):花芽がほころびだした!すごい香りで部屋が満たされてる!