CounterCreationDataCollection.AddRange メソッド
コレクションに複数の CounterCreationData インスタンスを追加します。
オーバーロードの一覧
コレクションに CounterCreationData インスタンスの配列を追加します。
[Visual Basic] Overloads Public Sub AddRange(CounterCreationData())
CounterCreationData インスタンスのコレクションをコレクションに追加します。
[Visual Basic] Overloads Public Sub AddRange(CounterCreationDataCollection)
[C++] public: void AddRange(CounterCreationDataCollection*);
[JScript] public function AddRange(CounterCreationDataCollection);
使用例
[Visual Basic, C#, C++] メモ ここでは、AddRange のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。
Imports System
Imports System.Diagnostics
Public Class CounterDataCollectionExample
Private Shared myCounter As PerformanceCounter
Public Shared Sub Main()
Try
Dim myCategoryName As String
Dim numberOfCounters As Integer
Console.Write("Enter the number of counters : ")
numberOfCounters = Integer.Parse(Console.ReadLine())
Dim myCounterCreationData(numberOfCounters-1) As CounterCreationData
Dim i As Integer
For i = 0 To numberOfCounters - 1
Console.Write("Enter the counter name for {0} counter : ", i)
myCounterCreationData(i) = New CounterCreationData()
myCounterCreationData(i).CounterName = Console.ReadLine()
Next i
Dim myCounterCollection As New CounterCreationDataCollection(myCounterCreationData)
Console.Write("Enter the category Name : ")
myCategoryName = Console.ReadLine()
' Check if the category already exists or not.
If Not PerformanceCounterCategory.Exists(myCategoryName) Then
Dim myNewCounterCollection As New CounterCreationDataCollection()
' Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' object.
myNewCounterCollection.AddRange(myCounterCollection)
PerformanceCounterCategory.Create(myCategoryName, "Sample Category", _
myNewCounterCollection)
For i = 0 To numberOfCounters - 1
myCounter = New PerformanceCounter(myCategoryName, _
myCounterCreationData(i).CounterName, "", False)
Next i
Console.WriteLine("The list of counters in CounterCollection are: ")
For i = 0 To myNewCounterCollection.Count - 1
Console.WriteLine("Counter {0} is '{1}'", i + 1, _
myNewCounterCollection(i).CounterName)
Next i
Else
Console.WriteLine("The category already exists")
End If
Catch e As Exception
Console.WriteLine("Exception: {0}.", e.Message)
Return
End Try
End Sub 'Main
End Class 'CounterDataCollectionExample
[C#]
using System;
using System.Diagnostics;
public class CounterDataCollectionExample
{
static PerformanceCounter myCounter;
public static void Main()
{
try
{
string myCategoryName;
int numberOfCounters;
Console.Write("Enter the number of counters : ");
numberOfCounters = int.Parse(Console.ReadLine());
CounterCreationData[] myCounterCreationData =
new CounterCreationData[numberOfCounters];
for(int i = 0; i < numberOfCounters; i++)
{
Console.Write("Enter the counter name for {0} counter : ", i);
myCounterCreationData[i] = new CounterCreationData();
myCounterCreationData[i].CounterName = Console.ReadLine();
}
CounterCreationDataCollection myCounterCollection =
new CounterCreationDataCollection(myCounterCreationData);
Console.Write("Enter the category Name : ");
myCategoryName = Console.ReadLine();
// Check if the category already exists or not.
if(!PerformanceCounterCategory.Exists(myCategoryName))
{
CounterCreationDataCollection myNewCounterCollection =
new CounterCreationDataCollection();
// Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' object.
myNewCounterCollection.AddRange(myCounterCollection);
PerformanceCounterCategory.Create(myCategoryName, "Sample Category",
myNewCounterCollection);
for(int i = 0; i < numberOfCounters; i++)
{
myCounter = new PerformanceCounter(myCategoryName,
myCounterCreationData[i].CounterName, "", false);
}
Console.WriteLine("The list of counters in CounterCollection are: ");
for(int i = 0; i < myNewCounterCollection.Count; i++)
Console.WriteLine("Counter {0} is '{1}'", i+1, myNewCounterCollection[i].CounterName);
}
else
{
Console.WriteLine("The category already exists");
}
}
catch(Exception e)
{
Console.WriteLine("Exception: {0}.", e.Message);
return;
}
}
}
[C++]
#using <mscorlib.dll>
#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
void main() {
PerformanceCounter* myCounter;
try {
String* myCategoryName;
int numberOfCounters;
Console::Write(S"Enter the number of counters : ");
numberOfCounters = Int32::Parse(Console::ReadLine());
CounterCreationData* myCounterCreationData[] = new CounterCreationData*[numberOfCounters];
for (int i = 0; i < numberOfCounters; i++) {
Console::Write(S"Enter the counter name for {0} counter : ", __box(i));
myCounterCreationData[i] = new CounterCreationData();
myCounterCreationData[i]->CounterName = Console::ReadLine();
}
CounterCreationDataCollection* myCounterCollection = new CounterCreationDataCollection(myCounterCreationData);
Console::Write(S"Enter the category Name : ");
myCategoryName = Console::ReadLine();
// Check if the category already exists or not.
if (!PerformanceCounterCategory::Exists(myCategoryName)) {
CounterCreationDataCollection* myNewCounterCollection = new CounterCreationDataCollection();
// Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' Object*.
myNewCounterCollection->AddRange(myCounterCollection);
PerformanceCounterCategory::Create(myCategoryName, S"Sample Category",
myNewCounterCollection);
for (int i = 0; i < numberOfCounters; i++) {
myCounter = new PerformanceCounter(myCategoryName,
myCounterCreationData[i]->CounterName, S"", false);
}
Console::WriteLine(S"The list of counters in CounterCollection are: ");
for(int i = 0; i < myNewCounterCollection->Count; i++)
Console::WriteLine(S"Counter {0} is '{1}'", __box(i+1), myNewCounterCollection->Item[i]->CounterName);
} else {
Console::WriteLine(S"The category already exists");
}
} catch (Exception* e) {
Console::WriteLine(S"Exception: {0}.", e->Message);
return;
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
参照
CounterCreationDataCollection クラス | CounterCreationDataCollection メンバ | System.Diagnostics 名前空間