CounterSampleとは? わかりやすく解説

CounterSample コンストラクタ (Int64, Int64, Int64, Int64, Int64, Int64, PerformanceCounterType, Int64)

CounterSample 構造体新しインスタンス初期化し、CounterTimeStamp プロパティ渡された値に設定します

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Public Sub New ( _
    rawValue As Long, _
    baseValue As Long, _
    counterFrequency As Long, _
    systemFrequency As Long, _
    timeStamp As Long, _
    timeStamp100nSec As Long, _
    counterType As PerformanceCounterType, _
    counterTimeStamp As Long _
)
Dim rawValue As Long
Dim baseValue As Long
Dim counterFrequency As Long
Dim systemFrequency As Long
Dim timeStamp As Long
Dim timeStamp100nSec As Long
Dim counterType As PerformanceCounterType
Dim counterTimeStamp As Long

Dim instance As New CounterSample(rawValue,
 baseValue, counterFrequency, systemFrequency, timeStamp, timeStamp100nSec, counterType,
 counterTimeStamp)
public CounterSample (
    long rawValue,
    long baseValue,
    long counterFrequency,
    long systemFrequency,
    long timeStamp,
    long timeStamp100nSec,
    PerformanceCounterType counterType,
    long counterTimeStamp
)
public:
CounterSample (
    long long rawValue, 
    long long baseValue, 
    long long counterFrequency, 
    long long systemFrequency, 
    long long timeStamp, 
    long long timeStamp100nSec, 
    PerformanceCounterType counterType, 
    long long counterTimeStamp
)
public CounterSample (
    long rawValue, 
    long baseValue, 
    long counterFrequency, 
    long systemFrequency, 
    long timeStamp, 
    long timeStamp100nSec, 
    PerformanceCounterType counterType, 
    long counterTimeStamp
)
public function CounterSample (
    rawValue : long, 
    baseValue : long, 
    counterFrequency : long, 
    systemFrequency : long, 
    timeStamp : long, 
    timeStamp100nSec : long, 
    counterType : PerformanceCounterType, 
    counterTimeStamp : long
)

パラメータ

rawValue

パフォーマンス カウンタサンプル関連付けられている数値

baseValue

サンプル複数カウンタ基づいている場合にだけ使用されるカウンタの生のベース値。省略できます

counterFrequency

カウンタ読み取る頻度

systemFrequency

システムカウンタ読み取る頻度

timeStamp

生のタイム スタンプ

timeStamp100nSec

信頼性の高い生のタイム スタンプ

counterType

このサンプルスナップショットになるカウンタ種類を示す PerformanceCounterType。

counterTimeStamp

サンプル取得した時刻

解説解説
使用例使用例
      Dim myPerformanceCounter1 As New
 PerformanceCounter("Processor", _
                                                  "% Processor
 Time", "0")
      Dim myCounterSample1 As New
 CounterSample(10&, 20&, 30&, 40&, 50&, 60&, _
                                     PerformanceCounterType.AverageCount64)
      Console.WriteLine("CounterTimeStamp = " &
 myCounterSample1.CounterTimeStamp)

      Console.WriteLine("BaseValue = " & myCounterSample1.BaseValue)
      Console.WriteLine("RawValue = " & myCounterSample1.RawValue)
      Console.WriteLine("CounterFrequency = " &
 myCounterSample1.CounterFrequency)
      Console.WriteLine("SystemFrequency = " &
 myCounterSample1.SystemFrequency)
      Console.WriteLine("TimeStamp = " & myCounterSample1.TimeStamp)
      Console.WriteLine("TimeStamp100nSec = " &
 myCounterSample1.TimeStamp100nSec)
      Console.WriteLine("CounterType = " & myCounterSample1.CounterType.ToString)
      ' Hold the results of sample.
      myCounterSample1 = myPerformanceCounter1.NextSample()

      Console.WriteLine("BaseValue = " & myCounterSample1.BaseValue)
      Console.WriteLine("RawValue = " & myCounterSample1.RawValue)
      Console.WriteLine("CounterFrequency = " &
 myCounterSample1.CounterFrequency)
      Console.WriteLine("SystemFrequency = " &
 myCounterSample1.SystemFrequency)
      Console.WriteLine("TimeStamp = " & myCounterSample1.TimeStamp)
      Console.WriteLine("TimeStamp100nSec = " &
 myCounterSample1.TimeStamp100nSec)
      Console.WriteLine("CounterType = " & myCounterSample1.CounterType.ToString)
<br /><span space="preserve">...</span><br
 />      Dim myPerformanceCounter2 As New
 PerformanceCounter("Processor", _
                                                   "% Processor
 Time", "0")
      Dim myCounterSample2 As New
 CounterSample(10&, 20&, 30&, 40&, 50&, 60&, _
                               PerformanceCounterType.AverageCount64, 300)
      Console.WriteLine("CounterTimeStamp = " &
 myCounterSample2.CounterTimeStamp)
      Console.WriteLine("BaseValue = " & myCounterSample2.BaseValue)
      Console.WriteLine("RawValue = " & myCounterSample2.RawValue)
      Console.WriteLine("CounterFrequency = " &
 myCounterSample2.CounterFrequency)
      Console.WriteLine("SystemFrequency = " &
 myCounterSample2.SystemFrequency)
      Console.WriteLine("TimeStamp = " & myCounterSample2.TimeStamp)
      Console.WriteLine("TimeStamp100nSec = " &
 myCounterSample2.TimeStamp100nSec)
      Console.WriteLine("CounterType = " & myCounterSample2.CounterType.ToString)
      Console.WriteLine("CounterTimeStamp = " &
 myCounterSample2.CounterTimeStamp)

      ' Hold the results of sample.
      myCounterSample2 = myPerformanceCounter2.NextSample()
      Console.WriteLine("BaseValue = " & myCounterSample2.BaseValue)
      Console.WriteLine("RawValue = " & myCounterSample2.RawValue)
      Console.WriteLine("CounterFrequency = " &
 myCounterSample2.CounterFrequency)
      Console.WriteLine("SystemFrequency = " &
 myCounterSample2.SystemFrequency)
      Console.WriteLine("TimeStamp = " & myCounterSample2.TimeStamp)
      Console.WriteLine("TimeStamp100nSec = " &
 myCounterSample2.TimeStamp100nSec)
      Console.WriteLine("CounterType = " & myCounterSample2.CounterType.ToString)
      Console.WriteLine("CounterTimeStamp = " &
 myCounterSample2.CounterTimeStamp)
      PerformanceCounter myPerformanceCounter1 = new PerformanceCounter
         ("Processor","% Processor Time", "0");
      CounterSample myCounterSample1 = new CounterSample(10L,
 20L, 30L, 40L, 50L, 60L,
                           PerformanceCounterType.AverageCount64);
      Console.WriteLine("CounterTimeStamp = "+myCounterSample1.CounterTimeStamp);

      Console.WriteLine("BaseValue = "+myCounterSample1.BaseValue);
      Console.WriteLine("RawValue = "+myCounterSample1.RawValue);
      Console.WriteLine("CounterFrequency = "+myCounterSample1.CounterFrequency);
      Console.WriteLine("SystemFrequency = "+myCounterSample1.SystemFrequency);
      Console.WriteLine("TimeStamp = "+myCounterSample1.TimeStamp);
      Console.WriteLine("TimeStamp100nSec = "+myCounterSample1.TimeStamp100nSec);
      Console.WriteLine("CounterType = "+myCounterSample1.CounterType);
      // Hold the results of sample.
      myCounterSample1 = myPerformanceCounter1.NextSample();
      Console.WriteLine("BaseValue = "+myCounterSample1.BaseValue);
      Console.WriteLine("RawValue = "+myCounterSample1.RawValue);
      Console.WriteLine("CounterFrequency = "+myCounterSample1.CounterFrequency);
      Console.WriteLine("SystemFrequency = "+myCounterSample1.SystemFrequency);
      Console.WriteLine("TimeStamp = "+myCounterSample1.TimeStamp);
      Console.WriteLine("TimeStamp100nSec = "+myCounterSample1.TimeStamp100nSec);
      Console.WriteLine("CounterType = "+myCounterSample1.CounterType);
<br /><span space="preserve">...</span><br /> 
     PerformanceCounter myPerformanceCounter2 = new PerformanceCounter
         ("Processor","% Processor Time", "0");
      CounterSample myCounterSample2 = new CounterSample(10L,
 20L, 30L, 40L, 50L, 60L,
                     PerformanceCounterType.AverageCount64, 300);
      Console.WriteLine("CounterTimeStamp = "+myCounterSample2.CounterTimeStamp);
      Console.WriteLine("BaseValue = "+myCounterSample2.BaseValue);
      Console.WriteLine("RawValue = "+myCounterSample2.RawValue);
      Console.WriteLine("CounterFrequency = "+myCounterSample2.CounterFrequency);
      Console.WriteLine("SystemFrequency = "+myCounterSample2.SystemFrequency);
      Console.WriteLine("TimeStamp = "+myCounterSample2.TimeStamp);
      Console.WriteLine("TimeStamp100nSec = "+myCounterSample2.TimeStamp100nSec);
      Console.WriteLine("CounterType = "+myCounterSample2.CounterType);
      Console.WriteLine("CounterTimeStamp = "+myCounterSample2.CounterTimeStamp);
      // Hold the results of sample.
      myCounterSample2 = myPerformanceCounter2.NextSample();
      Console.WriteLine("BaseValue = "+myCounterSample2.BaseValue);
      Console.WriteLine("RawValue = "+myCounterSample2.RawValue);
      Console.WriteLine("CounterFrequency = "+myCounterSample2.CounterFrequency);
      Console.WriteLine("SystemFrequency = "+myCounterSample2.SystemFrequency);
      Console.WriteLine("TimeStamp = "+myCounterSample2.TimeStamp);
      Console.WriteLine("TimeStamp100nSec = "+myCounterSample2.TimeStamp100nSec);
      Console.WriteLine("CounterType = "+myCounterSample2.CounterType);
      Console.WriteLine("CounterTimeStamp = "+myCounterSample2.CounterTimeStamp);
   PerformanceCounter^ myPerformanceCounter1 = gcnew PerformanceCounter(
      "Processor","% Processor Time","0" );
   CounterSample myCounterSample1( 10L, 20L, 30L, 40L, 50L, 60L,
     PerformanceCounterType::AverageCount64 );
   Console::WriteLine( "CounterTimeStamp = {0}", myCounterSample1.CounterTimeStamp
 );

   Console::WriteLine( "BaseValue = {0}", myCounterSample1.BaseValue );
   Console::WriteLine( "RawValue = {0}", myCounterSample1.RawValue );
   Console::WriteLine( "CounterFrequency = {0}", myCounterSample1.CounterFrequency
 );
   Console::WriteLine( "SystemFrequency = {0}", myCounterSample1.SystemFrequency
 );
   Console::WriteLine( "TimeStamp = {0}", myCounterSample1.TimeStamp );
   Console::WriteLine( "TimeStamp100nSec = {0}", myCounterSample1.TimeStamp100nSec
 );
   Console::WriteLine( "CounterType = {0}", myCounterSample1.CounterType
 );
   // Hold the results of sample.
   myCounterSample1 = myPerformanceCounter1->NextSample();
   Console::WriteLine( "BaseValue = {0}", myCounterSample1.BaseValue );
   Console::WriteLine( "RawValue = {0}", myCounterSample1.RawValue );
   Console::WriteLine( "CounterFrequency = {0}", myCounterSample1.CounterFrequency
 );
   Console::WriteLine( "SystemFrequency = {0}", myCounterSample1.SystemFrequency
 );
   Console::WriteLine( "TimeStamp = {0}", myCounterSample1.TimeStamp );
   Console::WriteLine( "TimeStamp100nSec = {0}", myCounterSample1.TimeStamp100nSec
 );
   Console::WriteLine( "CounterType = {0}", myCounterSample1.CounterType
 );
<br /><span space="preserve">...</span><br /> 
  PerformanceCounter^ myPerformanceCounter2 =
      gcnew PerformanceCounter( "Processor","% Processor Time","0"
 );
   CounterSample myCounterSample2( 10L, 20L, 30L, 40L, 50L, 60L,
     PerformanceCounterType::AverageCount64,300);
   Console::WriteLine( "CounterTimeStamp = {0}", myCounterSample2.CounterTimeStamp
 );
   Console::WriteLine( "BaseValue = {0}", myCounterSample2.BaseValue );
   Console::WriteLine( "RawValue = {0}", myCounterSample2.RawValue );
   Console::WriteLine( "CounterFrequency = {0}", myCounterSample2.CounterFrequency
 );
   Console::WriteLine( "SystemFrequency = {0}", myCounterSample2.SystemFrequency
 );
   Console::WriteLine( "TimeStamp = {0}", myCounterSample2.TimeStamp );
   Console::WriteLine( "TimeStamp100nSec = {0}", myCounterSample2.TimeStamp100nSec
 );
   Console::WriteLine( "CounterType = {0}", myCounterSample2.CounterType
 );
   Console::WriteLine( "CounterTimeStamp = {0}", myCounterSample2.CounterTimeStamp
 );
   // Hold the results of sample.
   myCounterSample2 = myPerformanceCounter2->NextSample();
   Console::WriteLine( "BaseValue = {0}", myCounterSample2.BaseValue );
   Console::WriteLine( "RawValue = {0}", myCounterSample2.RawValue );
   Console::WriteLine( "CounterFrequency = {0}", myCounterSample2.CounterFrequency
 );
   Console::WriteLine( "SystemFrequency = {0}", myCounterSample2.SystemFrequency
 );
   Console::WriteLine( "TimeStamp = {0}", myCounterSample2.TimeStamp );
   Console::WriteLine( "TimeStamp100nSec = {0}", myCounterSample2.TimeStamp100nSec
 );
   Console::WriteLine( "CounterType = {0}", myCounterSample2.CounterType
 );
   Console::WriteLine( "CounterTimeStamp = {0}", myCounterSample2.CounterTimeStamp
 );
        PerformanceCounter myPerformanceCounter1 = new PerformanceCounter(
            "Processor", "% Processor Time", "0");
        CounterSample myCounterSample1 = new CounterSample(10L,
 20L, 30L, 40L, 
            50L, 60L, PerformanceCounterType.AverageCount64);
        Console.WriteLine("CounterTimeStamp = " 
            + myCounterSample1.get_CounterTimeStamp());

        Console.WriteLine("BaseValue = " + myCounterSample1.get_BaseValue());
        Console.WriteLine("RawValue = " + myCounterSample1.get_RawValue());
        Console.WriteLine("CounterFrequency = " 
            + myCounterSample1.get_CounterFrequency());
        Console.WriteLine("SystemFrequency = " 
            + myCounterSample1.get_SystemFrequency());
        Console.WriteLine("TimeStamp = " + myCounterSample1.get_TimeStamp());
        Console.WriteLine("TimeStamp100nSec = " 
            + myCounterSample1.get_TimeStamp100nSec());
        Console.WriteLine("CounterType = " 
            + myCounterSample1.get_CounterType());
        // Hold the results of sample.
        myCounterSample1 = myPerformanceCounter1.NextSample();
        Console.WriteLine("BaseValue = " + myCounterSample1.get_BaseValue());
        Console.WriteLine("RawValue = " + myCounterSample1.get_RawValue());
        Console.WriteLine("CounterFrequency = " 
            + myCounterSample1.get_CounterFrequency());
        Console.WriteLine("SystemFrequency = " 
            + myCounterSample1.get_SystemFrequency());
        Console.WriteLine("TimeStamp = " 
            + myCounterSample1.get_TimeStamp());
        Console.WriteLine("TimeStamp100nSec = " 
            + myCounterSample1.get_TimeStamp100nSec());
        Console.WriteLine("CounterType = " 
            + myCounterSample1.get_CounterType());
<br /><span space="preserve">...</span><br /> 
       PerformanceCounter myPerformanceCounter2 = new PerformanceCounter(
            "Processor", "% Processor Time", "0");
        CounterSample myCounterSample2 = new CounterSample(10L,
 20L, 30L, 
            40L, 50L, 60L, PerformanceCounterType.AverageCount64, 300);
        Console.WriteLine("CounterTimeStamp = " 
            + myCounterSample2.get_CounterTimeStamp());
        Console.WriteLine("BaseValue = " + myCounterSample2.get_BaseValue());
        Console.WriteLine("RawValue = " + myCounterSample2.get_RawValue());
        Console.WriteLine("CounterFrequency = " 
            + myCounterSample2.get_CounterFrequency());
        Console.WriteLine("SystemFrequency = " 
            + myCounterSample2.get_SystemFrequency());
        Console.WriteLine("TimeStamp = " + myCounterSample2.get_TimeStamp());
        Console.WriteLine("TimeStamp100nSec = " 
            + myCounterSample2.get_TimeStamp100nSec());
        Console.WriteLine("CounterType = " 
            + myCounterSample2.get_CounterType());
        Console.WriteLine("CounterTimeStamp = " 
            + myCounterSample2.get_CounterTimeStamp());
        // Hold the results of sample.
        myCounterSample2 = myPerformanceCounter2.NextSample();
        Console.WriteLine("BaseValue = " + myCounterSample2.get_BaseValue());
        Console.WriteLine("RawValue = " + myCounterSample2.get_RawValue());
        Console.WriteLine("CounterFrequency = " 
            + myCounterSample2.get_CounterFrequency());
        Console.WriteLine("SystemFrequency = " 
            + myCounterSample2.get_SystemFrequency());
        Console.WriteLine("TimeStamp = " + myCounterSample2.get_TimeStamp());
        Console.WriteLine("TimeStamp100nSec = " 
            + myCounterSample2.get_TimeStamp100nSec());
        Console.WriteLine("CounterType = " 
            + myCounterSample2.get_CounterType());
        Console.WriteLine("CounterTimeStamp = " 
            + myCounterSample2.get_CounterTimeStamp());
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

CounterSample コンストラクタ

CounterSample 構造体新しインスタンス初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
CounterSample (Int64, Int64, Int64, Int64, Int64, Int64, PerformanceCounterType) CounterSample 構造体新しインスタンス初期化し、CounterTimeStamp プロパティゼロ (0) に設定します
CounterSample (Int64, Int64, Int64, Int64, Int64, Int64, PerformanceCounterType, Int64) CounterSample 構造体新しインスタンス初期化しCounterTimeStamp プロパティ渡された値に設定します
参照参照

関連項目

CounterSample 構造体
CounterSample メンバ
System.Diagnostics 名前空間

CounterSample コンストラクタ (Int64, Int64, Int64, Int64, Int64, Int64, PerformanceCounterType)

CounterSample 構造体新しインスタンス初期化し、CounterTimeStamp プロパティゼロ (0) に設定します

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Public Sub New ( _
    rawValue As Long, _
    baseValue As Long, _
    counterFrequency As Long, _
    systemFrequency As Long, _
    timeStamp As Long, _
    timeStamp100nSec As Long, _
    counterType As PerformanceCounterType _
)
Dim rawValue As Long
Dim baseValue As Long
Dim counterFrequency As Long
Dim systemFrequency As Long
Dim timeStamp As Long
Dim timeStamp100nSec As Long
Dim counterType As PerformanceCounterType

Dim instance As New CounterSample(rawValue,
 baseValue, counterFrequency, systemFrequency, timeStamp, timeStamp100nSec, counterType)
public CounterSample (
    long rawValue,
    long baseValue,
    long counterFrequency,
    long systemFrequency,
    long timeStamp,
    long timeStamp100nSec,
    PerformanceCounterType counterType
)
public:
CounterSample (
    long long rawValue, 
    long long baseValue, 
    long long counterFrequency, 
    long long systemFrequency, 
    long long timeStamp, 
    long long timeStamp100nSec, 
    PerformanceCounterType counterType
)
public CounterSample (
    long rawValue, 
    long baseValue, 
    long counterFrequency, 
    long systemFrequency, 
    long timeStamp, 
    long timeStamp100nSec, 
    PerformanceCounterType counterType
)
public function CounterSample (
    rawValue : long, 
    baseValue : long, 
    counterFrequency : long, 
    systemFrequency : long, 
    timeStamp : long, 
    timeStamp100nSec : long, 
    counterType : PerformanceCounterType
)

パラメータ

rawValue

パフォーマンス カウンタサンプル関連付けられている数値

baseValue

サンプル複数カウンタ基づいている場合にだけ使用されるカウンタの生のベース値。省略できます

counterFrequency

カウンタ読み取る頻度

systemFrequency

システムカウンタ読み取る頻度

timeStamp

生のタイム スタンプ

timeStamp100nSec

信頼性の高い生のタイム スタンプ

counterType

このサンプルスナップショットになるカウンタ種類を示す PerformanceCounterType。

解説解説
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

CounterSample フィールド


CounterSample プロパティ


CounterSample メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

CounterSample 構造体
System.Diagnostics 名前空間

CounterSample メンバ

パフォーマンス カウンタ用の生データ保持する構造体定義します

CounterSample データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
パブリック フィールドパブリック フィールド
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ BaseValue カウンタ省略可能な生のベース値を取得します
パブリック プロパティ CounterFrequency 生のカウンタ頻度取得します
パブリック プロパティ CounterTimeStamp カウンタタイム スタンプ取得します
パブリック プロパティ CounterType パフォーマンス カウンタ タイプ取得します
パブリック プロパティ RawValue カウンタの生の値を取得します
パブリック プロパティ SystemFrequency 生のシステム頻度取得します
パブリック プロパティ TimeStamp 生のタイム スタンプ取得します
パブリック プロパティ TimeStamp100nSec 信頼性の高い生のタイム スタンプ取得します
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

CounterSample 構造体
System.Diagnostics 名前空間

CounterSample 構造体

パフォーマンス カウンタ用の生データ保持する構造体定義します

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Dim instance As CounterSample
public struct CounterSample
public value class CounterSample
public final class CounterSample extends ValueType
JScript では、構造体使用できますが、新規に宣言することはできません。
使用例使用例
Imports System
Imports System.Collections
Imports System.Collections.Specialized
Imports System.Diagnostics

 _

Public Class App
   
   Private Shared PC As
 PerformanceCounter
   Private Shared BPC As
 PerformanceCounter
   
   
   Public Shared Sub Main()
      
      Dim samplesList As New
 ArrayList()
      
      SetupCategory()
      CreateCounters()
      CollectSamples(samplesList)
      CalculateResults(samplesList)
   End Sub 'Main
    
   
   
   Private Shared Function
 SetupCategory() As Boolean
      If Not PerformanceCounterCategory.Exists("AverageCounter64SampleCategory")
 Then
         
         Dim CCDC As New
 CounterCreationDataCollection()
         
         ' Add the counter.
         Dim averageCount64 As New
 CounterCreationData()
         averageCount64.CounterType = PerformanceCounterType.AverageCount64
         averageCount64.CounterName = "AverageCounter64Sample"
         CCDC.Add(averageCount64)
         
         ' Add the base counter.
         Dim averageCount64Base As New
 CounterCreationData()
         averageCount64Base.CounterType = PerformanceCounterType.AverageBase
         averageCount64Base.CounterName = "AverageCounter64SampleBase"
         CCDC.Add(averageCount64Base)
         
         ' Create the category.
         PerformanceCounterCategory.Create("AverageCounter64SampleCategory",
 "Demonstrates usage of the AverageCounter64 performance counter
 type.", CCDC)
         
         Return True
      Else
         Console.WriteLine("Category exists - AverageCounter64SampleCategory")
         Return False
      End If
   End Function 'SetupCategory
   
   
   Private Shared Sub CreateCounters()
      ' Create the counters.

      PC = New PerformanceCounter("AverageCounter64SampleCategory",
 "AverageCounter64Sample", False)
      
      BPC = New PerformanceCounter("AverageCounter64SampleCategory",
 "AverageCounter64SampleBase", False)
      
      
      PC.RawValue = 0
      BPC.RawValue = 0
   End Sub 'CreateCounters
   
   
   Private Shared Sub CollectSamples(samplesList
 As ArrayList)
      
      Dim r As New Random(DateTime.Now.Millisecond)
      
      ' Loop for the samples.
      Dim j As Integer
      For j = 0 To 99
         
         Dim value As Integer
 = r.Next(1, 10)
         Console.Write((j + " = " + value))
         
         PC.IncrementBy(value)
         
         BPC.Increment()
         
         If j Mod 10 = 9 Then
            OutputSample(PC.NextSample())
            samplesList.Add(PC.NextSample())
         Else
            Console.WriteLine()
         End If 
         System.Threading.Thread.Sleep(50)
      Next j
   End Sub 'CollectSamples
    
   
   Private Shared Sub CalculateResults(samplesList
 As ArrayList)
      Dim i As Integer
      For i = 0 To (samplesList.Count - 1)
 - 1
         ' Output the sample.
         OutputSample(CType(samplesList(i), CounterSample))
         OutputSample(CType(samplesList((i + 1)), CounterSample))
         
         ' Use .NET to calculate the counter value.
         Console.WriteLine((".NET computed counter value = "
 + CounterSampleCalculator.ComputeCounterValue(CType(samplesList(i), CounterSample),
 CType(samplesList((i + 1)), CounterSample))))
         
         ' Calculate the counter value manually.
         Console.WriteLine(("My computed counter value = "
 + MyComputeCounterValue(CType(samplesList(i), CounterSample), CType(samplesList((i
 + 1)), CounterSample))))
      Next i
   End Sub 'CalculateResults
   
   
   
   
   '++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
   '    Description - This counter type shows how many items are processed,
 on average,
   '        during an operation. Counters of this type display a ratio
 of the items 
   '        processed (such as bytes sent) to the number of operations
 completed. The  
   '        ratio is calculated by comparing the number of items processed
 during the 
   '        last interval to the number of operations completed during
 the last interval. 
   ' Generic type - Average
   '      Formula - (N1 - N0) / (D1 - D0), where the numerator (N) represents
 the number 
   '        of items processed during the last sample interval and the
 denominator (D) 
   '        represents the number of operations completed during the
 last two sample 
   '        intervals. 
   '    Average (Nx - N0) / (Dx - D0)  
   '    Example PhysicalDisk\ Avg. Disk Bytes/Transfer 
   '++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
   Private Shared Function
 MyComputeCounterValue(s0 As CounterSample, s1 As
 CounterSample) As [Single]
      Dim numerator As [Single] = CType(s1.RawValue,
 [Single]) - CType(s0.RawValue, [Single])
      Dim denomenator As [Single] = CType(s1.BaseValue,
 [Single]) - CType(s0.BaseValue, [Single])
      Dim counterValue As [Single] = numerator
 / denomenator
      Return counterValue
   End Function 'MyComputeCounterValue
   
   
   ' Output information about the counter sample.
   Private Shared Sub OutputSample(s
 As CounterSample)
      Console.WriteLine(ControlChars.Lf + ControlChars.Cr + "+++++++++++")
      Console.WriteLine("Sample values - " + ControlChars.Lf
 + ControlChars.Cr)
      Console.WriteLine(("   BaseValue        = "
 + s.BaseValue))
      Console.WriteLine(("   CounterFrequency = "
 + s.CounterFrequency))
      Console.WriteLine(("   CounterTimeStamp = "
 + s.CounterTimeStamp))
      Console.WriteLine(("   CounterType      = "
 + s.CounterType))
      Console.WriteLine(("   RawValue         = "
 + s.RawValue))
      Console.WriteLine(("   SystemFrequency  = "
 + s.SystemFrequency))
      Console.WriteLine(("   TimeStamp        = "
 + s.TimeStamp))
      Console.WriteLine(("   TimeStamp100nSec = "
 + s.TimeStamp100nSec))
      Console.WriteLine("++++++++++++++++++++++")
   End Sub 'OutputSample
End Class 'App
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Diagnostics;

public class App {

    private static PerformanceCounter PC;
    private static PerformanceCounter BPC;

    public static void Main()
    {    
    
        ArrayList samplesList = new ArrayList();

        SetupCategory();
        CreateCounters();
        CollectSamples(samplesList);
        CalculateResults(samplesList);

    }
    

    private static bool
 SetupCategory()
    {        
        if ( !PerformanceCounterCategory.Exists("AverageCounter64SampleCategory")
 ) 
        {

            CounterCreationDataCollection CCDC = new CounterCreationDataCollection();
            
            // Add the counter.
            CounterCreationData averageCount64 = new CounterCreationData();
            averageCount64.CounterType = PerformanceCounterType.AverageCount64;
            averageCount64.CounterName = "AverageCounter64Sample";
            CCDC.Add(averageCount64);
            
            // Add the base counter.
            CounterCreationData averageCount64Base = new CounterCreationData();
            averageCount64Base.CounterType = PerformanceCounterType.AverageBase;
            averageCount64Base.CounterName = "AverageCounter64SampleBase";
            CCDC.Add(averageCount64Base);

            // Create the category.
            PerformanceCounterCategory.Create("AverageCounter64SampleCategory"
,
 
                "Demonstrates usage of the AverageCounter64 performance counter
 type.", 
                CCDC);
                
            return(true);
        }
        else
        {
            Console.WriteLine("Category exists - AverageCounter64SampleCategory");
            return(false);
        }
    }
    
    private static void
 CreateCounters()
    {
        // Create the counters.

        PC = new PerformanceCounter("AverageCounter64SampleCategory",
 
            "AverageCounter64Sample", 
            false);
        

        BPC = new PerformanceCounter("AverageCounter64SampleCategory",
 
            "AverageCounter64SampleBase", 
            false);
        
        
        PC.RawValue=0;
        BPC.RawValue=0;
    }
    
    private static void
 CollectSamples(ArrayList samplesList)
    {
        
        Random r = new Random( DateTime.Now.Millisecond );

        // Loop for the samples.
        for (int j = 0; j < 100; j++) 
        {
            
            int value = r.Next(1, 10);
            Console.Write(j + " = " + value);

            PC.IncrementBy(value);

            BPC.Increment();

            if ((j % 10) == 9) 
            {
                OutputSample(PC.NextSample());
                samplesList.Add( PC.NextSample() );
            }
            else
                Console.WriteLine();
            
            System.Threading.Thread.Sleep(50);
        }

    }
    
    private static void
 CalculateResults(ArrayList samplesList)
    {
        for(int i = 0; i < (samplesList.Count
 - 1); i++)
        {
            // Output the sample.
            OutputSample( (CounterSample)samplesList[i] );
            OutputSample( (CounterSample)samplesList[i+1] );

            // Use .NET to calculate the counter value.
            Console.WriteLine(".NET computed counter value = " +
                CounterSampleCalculator.ComputeCounterValue((CounterSample)samplesList[i]
,
                (CounterSample)samplesList[i+1]) );

            // Calculate the counter value manually.
            Console.WriteLine("My computed counter value = " + 
                MyComputeCounterValue((CounterSample)samplesList[i],
                (CounterSample)samplesList[i+1]) );

        }
    }
    
    
    //++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
    //    Description - This counter type shows how many items are processed,
 on average,
    //        during an operation. Counters of this type display a ratio
 of the items 
    //        processed (such as bytes sent) to the number of operations
 completed. The  
    //        ratio is calculated by comparing the number of items processed
 during the 
    //        last interval to the number of operations completed during
 the last interval. 
    // Generic type - Average
    //      Formula - (N1 - N0) / (D1 - D0), where the numerator (N)
 represents the number 
    //        of items processed during the last sample interval and
 the denominator (D) 
    //        represents the number of operations completed during the
 last two sample 
    //        intervals. 
    //    Average (Nx - N0) / (Dx - D0)  
    //    Example PhysicalDisk\ Avg. Disk Bytes/Transfer 
    //++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
    private static Single MyComputeCounterValue(CounterSample
 s0, CounterSample s1)
    {
        Single numerator = (Single)s1.RawValue - (Single)s0.RawValue;
        Single denomenator = (Single)s1.BaseValue - (Single)s0.BaseValue;
        Single counterValue = numerator / denomenator;
        return(counterValue);
    }
        
    // Output information about the counter sample.
    private static void
 OutputSample(CounterSample s)
    {
        Console.WriteLine("\r\n+++++++++++");
        Console.WriteLine("Sample values - \r\n");
        Console.WriteLine("   BaseValue        = " + s.BaseValue);
        Console.WriteLine("   CounterFrequency = " + s.CounterFrequency);
        Console.WriteLine("   CounterTimeStamp = " + s.CounterTimeStamp);
        Console.WriteLine("   CounterType      = " + s.CounterType);
        Console.WriteLine("   RawValue         = " + s.RawValue);
        Console.WriteLine("   SystemFrequency  = " + s.SystemFrequency);
        Console.WriteLine("   TimeStamp        = " + s.TimeStamp);
        Console.WriteLine("   TimeStamp100nSec = " + s.TimeStamp100nSec);
        Console.WriteLine("++++++++++++++++++++++");
    }
}
#using <System.dll>

using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
using namespace System::Diagnostics;

// Output information about the counter sample.
void OutputSample( CounterSample s )
{
   Console::WriteLine( "\r\n+++++++++++" );
   Console::WriteLine( "Sample values - \r\n" );
   Console::WriteLine( "   BaseValue        = {0}", s.BaseValue );
   Console::WriteLine( "   CounterFrequency = {0}", s.CounterFrequency
 );
   Console::WriteLine( "   CounterTimeStamp = {0}", s.CounterTimeStamp
 );
   Console::WriteLine( "   CounterType      = {0}", s.CounterType );
   Console::WriteLine( "   RawValue         = {0}", s.RawValue );
   Console::WriteLine( "   SystemFrequency  = {0}", s.SystemFrequency );
   Console::WriteLine( "   TimeStamp        = {0}", s.TimeStamp );
   Console::WriteLine( "   TimeStamp100nSec = {0}", s.TimeStamp100nSec
 );
   Console::WriteLine( "++++++++++++++++++++++" );
}

//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
//    Description - This counter type shows how many items are processed,
 on average,
//        during an operation. Counters of this type display a ratio
 of the items 
//        processed (such as bytes sent) to the number of operations
 completed. The  
//        ratio is calculated by comparing the number of items processed
 during the 
//        last interval to the number of operations completed during
 the last interval. 
// Generic type - Average
//      Formula - (N1 - N0) / (D1 - D0), where the numerator (N) represents
 the number 
//        of items processed during the last sample interval and the
 denominator (D) 
//        represents the number of operations completed during the last
 two sample 
//        intervals. 
//    Average (Nx - N0) / (Dx - D0)  
//    Example PhysicalDisk\ Avg. Disk Bytes/Transfer 
//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
float MyComputeCounterValue( CounterSample s0, CounterSample s1
 )
{
   float numerator = (float)s1.RawValue - (float)s0.RawValue;
   float denomenator = (float)s1.BaseValue
 - (float)s0.BaseValue;
   float counterValue = numerator / denomenator;
   return counterValue;
}

bool SetupCategory()
{
   if (  !PerformanceCounterCategory::Exists( "AverageCounter64SampleCategory"
 ) )
   {
      CounterCreationDataCollection^ CCDC = gcnew CounterCreationDataCollection;
      
      // Add the counter.
      CounterCreationData^ averageCount64 = gcnew CounterCreationData;
      averageCount64->CounterType = PerformanceCounterType::AverageCount64;
      averageCount64->CounterName = "AverageCounter64Sample";
      CCDC->Add( averageCount64 );
      
      // Add the base counter.
      CounterCreationData^ averageCount64Base = gcnew CounterCreationData;
      averageCount64Base->CounterType = PerformanceCounterType::AverageBase;
      averageCount64Base->CounterName = "AverageCounter64SampleBase";
      CCDC->Add( averageCount64Base );
      
      // Create the category.
      PerformanceCounterCategory::Create( "AverageCounter64SampleCategory",
 "Demonstrates usage of the AverageCounter64 performance counter type.",
 CCDC );
      return (true);
   }
   else
   {
      Console::WriteLine( "Category exists - AverageCounter64SampleCategory"
 );
      return (false);
   }
}

void CreateCounters( PerformanceCounter^% PC, PerformanceCounter^%
 BPC )
{
   
   // Create the counters.
   PC = gcnew PerformanceCounter( "AverageCounter64SampleCategory","AverageCounter64Sample",false
 );

   BPC = gcnew PerformanceCounter( "AverageCounter64SampleCategory","AverageCounter64SampleBase",false
 );
   PC->RawValue = 0;
   BPC->RawValue = 0;
}

void CollectSamples( ArrayList^ samplesList, PerformanceCounter^
 PC, PerformanceCounter^ BPC )
{
   Random^ r = gcnew Random( DateTime::Now.Millisecond );

   // Loop for the samples.
   for ( int j = 0; j < 100; j++ )
   {
      int value = r->Next( 1, 10 );
      Console::Write( "{0} = {1}", j, value );
      PC->IncrementBy( value );
      BPC->Increment();
      if ( (j % 10) == 9 )
      {
         OutputSample( PC->NextSample() );
         samplesList->Add( PC->NextSample() );
      }
      else
            Console::WriteLine();
      System::Threading::Thread::Sleep( 50 );
   }
}

void CalculateResults( ArrayList^ samplesList )
{
   for ( int i = 0; i < (samplesList->Count
 - 1); i++ )
   {
      // Output the sample.
      OutputSample(  *safe_cast<CounterSample^>(samplesList[ i ]) );
      OutputSample(  *safe_cast<CounterSample^>(samplesList[ i + 1 ]) );
      
      // Use .NET to calculate the counter value.
      Console::WriteLine( ".NET computed counter value = {0}", CounterSampleCalculator::ComputeCounterValue(
  *safe_cast<CounterSample^>(samplesList[ i ]),  *safe_cast<CounterSample^>(samplesList[
 i + 1 ]) ) );
      
      // Calculate the counter value manually.
      Console::WriteLine( "My computed counter value = {0}", MyComputeCounterValue(
  *safe_cast<CounterSample^>(samplesList[ i ]),  *safe_cast<CounterSample^>(samplesList[
 i + 1 ]) ) );
   }
}

int main()
{
   ArrayList^ samplesList = gcnew ArrayList;
   PerformanceCounter^ PC;
   PerformanceCounter^ BPC;
   SetupCategory();
   CreateCounters( PC, BPC );
   CollectSamples( samplesList, PC, BPC );
   CalculateResults( samplesList );
}
import System.*;  
import System.Collections.*;  
import System.Collections.Specialized.*;  
import System.Diagnostics.*;  

public class App
{
    private static PerformanceCounter pc;
    private static PerformanceCounter bpc;

    public static void main(String[]
 args)
    {
        ArrayList samplesList = new ArrayList();
        SetupCategory();
        CreateCounters();
        CollectSamples(samplesList);
        CalculateResults(samplesList);
    } //main

    private static boolean SetupCategory()
    {
        if (!(PerformanceCounterCategory.Exists(
            "AverageCounter64SampleCategory"))) {
            CounterCreationDataCollection ccdc = 
                new CounterCreationDataCollection();
            // Add the counter.
            CounterCreationData averageCount64 = new CounterCreationData();
            averageCount64.
                set_CounterType(PerformanceCounterType.AverageCount64);
            averageCount64.set_CounterName("AverageCounter64Sample");
            ccdc.Add(averageCount64);
            // Add the base counter.
            CounterCreationData averageCount64Base = new CounterCreationData();
            averageCount64Base.set_CounterType(PerformanceCounterType.
                AverageBase);
            averageCount64Base.set_CounterName("AverageCounter64SampleBase");
            ccdc.Add(averageCount64Base);
            // Create the category.
            PerformanceCounterCategory.Create("AverageCounter64SampleCategory"
,
                "Demonstrates usage of the AverageCounter64 performance "
                + "counter type.", ccdc);
            return true;
        }
        else {
            Console.WriteLine("Category exists - AverageCounter64SampleCategory");
            return false;
        }
    } //SetupCategory

    private static void
 CreateCounters()
    {
        // Create the counters.
        pc = new PerformanceCounter("AverageCounter64SampleCategory"
,
            "AverageCounter64Sample", false);
        bpc = new PerformanceCounter("AverageCounter64SampleCategory"
,
            "AverageCounter64SampleBase", false);
        pc.set_RawValue(0);
        bpc.set_RawValue(0);
    } //CreateCounters

    private static void
 CollectSamples(ArrayList samplesList)
    {
        Random r = new Random(DateTime.get_Now().get_Millisecond());
        // Loop for the samples.
        for (int j = 0; j < 100; j++) {
            int value = r.Next(1, 10);
            Console.Write(j + " = " + value);
            pc.IncrementBy(value);
            bpc.Increment();

            if (j % 10 == 9) {
                OutputSample(pc.NextSample());
                samplesList.Add(pc.NextSample());
            }
            else {
                Console.WriteLine();
            }
            System.Threading.Thread.Sleep(50);
        }
    } //CollectSamples

    private static void
 CalculateResults(ArrayList samplesList)
    {
        for (int i = 0; i < samplesList.get_Count()
 - 1; i++) {
            // Output the sample.
            OutputSample((CounterSample)samplesList.get_Item(i));
            OutputSample((CounterSample)samplesList.get_Item(i + 1));
            // Use.NET to calculate the counter value.
            Console.WriteLine(".NET computed counter value = " 
                + CounterSampleCalculator.ComputeCounterValue((CounterSample)
                samplesList.get_Item(i), 
                (CounterSample)samplesList.get_Item(i + 1)));
            // Calculate the counter value manually.
            Console.WriteLine("My computed counter value = "
                + MyComputeCounterValue((CounterSample)samplesList.get_Item(i),
                (CounterSample)samplesList.get_Item(i + 1)));
        }
    } //CalculateResults

    //++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
    //++++++++
    //    Description - This counter type shows how many items are processed,
 
    //        on average,during an operation.Counters of this type display
 a
    //        ratio of the items processed (such as bytes sent) to the
 number
    //        of operations completed. The ratio is calculated by comparing
    //        the number of items processed during the last interval
 to the 
    //        number of operations completed during the last interval.
 
    //  Generic type - Average
    //        Formula - (N1 - N0) / (D1 - D0), where the numerator (N)
 
    //        represents the number of items processed during the last
 sample
    //        interval and the denominator (D) represents the number
 of
    //        operations completed during the last two sample 
    //        intervals. 
    //    Average (Nx - N0) / (Dx - D0)  
    //    Example PhysicalDisk\ Avg. Disk Bytes/Transfer 
    //++++++++//++++++++//++++++++//++++++++//++++++++//++++++++//++++++++
    //++++++++
    private static float
 MyComputeCounterValue(CounterSample s0,
        CounterSample s1)
    {
        float numerator = (float)s1.get_RawValue()
 - (float)s0.get_RawValue();
        float denomenator = (float)s1.get_BaseValue()
 - (float)s0.
            get_BaseValue();
        float counterValue = numerator / denomenator;
        return counterValue;
    } //MyComputeCounterValue

    // Output information about the counter sample.
    private static void
 OutputSample(CounterSample s)
    {
        Console.WriteLine("\r\n+++++++++++");
        Console.WriteLine("Sample values - \r\n");
        Console.WriteLine("   BaseValue        = " + s.get_BaseValue());
        Console.WriteLine("   CounterFrequency = " + s.get_CounterFrequency());
        Console.WriteLine("   CounterTimeStamp = " + s.get_CounterTimeStamp());
        Console.WriteLine("   CounterType      = " + s.get_CounterType());
        Console.WriteLine("   RawValue         = " + s.get_RawValue());
        Console.WriteLine("   SystemFrequency  = " + s.get_SystemFrequency());
        Console.WriteLine("   TimeStamp        = " + s.get_TimeStamp());
        Console.WriteLine("   TimeStamp100nSec = " + s.get_TimeStamp100nSec());
        Console.WriteLine("++++++++++++++++++++++");
    } //OutputSample
} //App
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「CounterSample」の関連用語

CounterSampleのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



CounterSampleのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS