■■■

2016年4月6日水曜日

メモリの空き容量をプログラムで取得する方法

メモリの空き容量をプログラムで取得する方法

VB.NET

    'PerformanceCounterでメモリ情報を取得

Private PerCnts As PerformanceCounter() = New PerformanceCounter(0) {}

'パフォーマンスカウンターの初期設定
Private Sub Form1_Load( _
ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' 初期化
PerCnts(0) = New PerformanceCounter
' メモリ
PerCnts(0).CategoryName = "Memory"
' カウンター名を設定
PerCnts(0).CounterName = "Available KBytes"
' 値取得を開始
PerCnts(0).NextValue()
End Sub

'取得タイマー
Private Sub Timer1_Tick( _
ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
' メモリの空き容量を表示
Debug.Print(Val(PerCnts(0).NextValue()).ToString("#,###") & " KBytes")
End Sub

C#

    //パフォーマンスカウンタ
private System.Diagnostics.PerformanceCounter[] PerCnts =
new System.Diagnostics.PerformanceCounter[1];

//パフォーマンスカウンタの初期化
private void Form1_Load(object sender, EventArgs e)
{
// 初期化
PerCnts[0] = new System.Diagnostics.PerformanceCounter();
// カテゴリ
PerCnts[0].CategoryName = "Memory";
// カウンタ名
PerCnts[0].CounterName = "Available KBytes";
// 値取得
PerCnts[0].NextValue();
}

//タイマー
private void timer1_Tick(object sender, EventArgs e)
{
// メモリー空き容量を表示
System.Diagnostics.Debug.WriteLine(
PerCnts[0].NextValue().ToString("#,###") + " KBytes");
}

■■■