InstanceDataCollection Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan kumpulan objek yang sangat ditik InstanceData .
public ref class InstanceDataCollection : System::Collections::DictionaryBase
public class InstanceDataCollection : System.Collections.DictionaryBase
type InstanceDataCollection = class
inherit DictionaryBase
Public Class InstanceDataCollection
Inherits DictionaryBase
- Warisan
Contoh
Contoh kode berikut menampilkan data instans untuk tertentu PerformanceCounterCategory di komputer lokal. Ini pertama-tama PerformanceCounterCategory menampilkan daftar nama bernomor. Setelah pengguna memasukkan jumlah salah satu kategori, contohnya InstanceDataCollectionCollection mendapatkan untuk itu PerformanceCounterCategory. Kemudian mengonversi koleksi yang dikembalikan oleh Values ke array InstanceDataCollection objek. Contohnya juga menampilkan data instans yang terkait dengan masing-masing InstanceDataInstanceDataCollection.
using System;
using System.Diagnostics;
using System.Collections;
class InstDataKeysValuesMod
{
private static string categoryName;
public static void Main()
{
string catNumStr;
int categoryNum;
PerformanceCounterCategory[] categories = PerformanceCounterCategory.GetCategories();
Console.WriteLine("These categories are registered on this computer:");
int catX;
for(catX=0; catX<categories.Length; catX++)
{
Console.WriteLine("{0,4} - {1}", catX+1, categories[catX].CategoryName);
}
// Ask the user to choose a category.
Console.Write("Enter the category number from the above list: ");
catNumStr = Console.ReadLine();
// Validate the entered category number.
try
{
categoryNum = int.Parse(catNumStr);
if (categoryNum<1||categoryNum>categories.Length)
{
throw new Exception(String.Format("The category number must be in the " +
"range 1..{0}.", categories.Length));
}
categoryName = categories[(categoryNum - 1)].CategoryName;
}
catch(Exception ex)
{
Console.WriteLine("\"{0}\" is not a valid category number." +
"\r\n{1}", catNumStr, ex.Message);
return;
}
// Process the InstanceDataCollectionCollection for this category.
PerformanceCounterCategory pcc = new PerformanceCounterCategory(categoryName);
InstanceDataCollectionCollection idColCol = pcc.ReadCategory();
ICollection idColColKeys = idColCol.Keys;
string[] idCCKeysArray = new string[idColColKeys.Count];
idColColKeys.CopyTo(idCCKeysArray, 0);
ICollection idColColValues = idColCol.Values;
InstanceDataCollection[] idCCValuesArray = new InstanceDataCollection[idColColValues.Count];
idColColValues.CopyTo(idCCValuesArray, 0);
Console.WriteLine("InstanceDataCollectionCollection for \"{0}\" " +
"has {1} elements.", categoryName, idColCol.Count);
// Display the InstanceDataCollectionCollection Keys and Values.
// The Keys and Values collections have the same number of elements.
int index;
for(index=0; index<idCCKeysArray.Length; index++)
{
Console.WriteLine(" Next InstanceDataCollectionCollection " +
"Key is \"{0}\"", idCCKeysArray[index]);
ProcessInstanceDataCollection(idCCValuesArray[index]);
}
}
// Display the contents of an InstanceDataCollection.
public static void ProcessInstanceDataCollection(InstanceDataCollection idCol)
{
ICollection idColKeys = idCol.Keys;
string[] idColKeysArray = new string[idColKeys.Count];
idColKeys.CopyTo(idColKeysArray, 0);
ICollection idColValues = idCol.Values;
InstanceData[] idColValuesArray = new InstanceData[idColValues.Count];
idColValues.CopyTo(idColValuesArray, 0);
Console.WriteLine(" InstanceDataCollection for \"{0}\" " +
"has {1} elements.", idCol.CounterName, idCol.Count);
// Display the InstanceDataCollection Keys and Values.
// The Keys and Values collections have the same number of elements.
int index;
for(index=0; index<idColKeysArray.Length; index++)
{
Console.WriteLine(" Next InstanceDataCollection " +
"Key is \"{0}\"", idColKeysArray[index]);
ProcessInstanceDataObject(idColValuesArray[index]);
}
}
// Display the contents of an InstanceData object.
public static void ProcessInstanceDataObject(InstanceData instData)
{
CounterSample sample = instData.Sample;
Console.WriteLine(" From InstanceData:\r\n " +
"InstanceName: {0,-31} RawValue: {1}", instData.InstanceName, instData.Sample.RawValue);
Console.WriteLine(" From CounterSample:\r\n " +
"CounterType: {0,-32} SystemFrequency: {1}\r\n" +
" BaseValue: {2,-34} RawValue: {3}\r\n" +
" CounterFrequency: {4,-27} CounterTimeStamp: {5}\r\n" +
" TimeStamp: {6,-34} TimeStamp100nSec: {7}", sample.CounterType, sample.SystemFrequency, sample.BaseValue, sample.RawValue, sample.CounterFrequency, sample.CounterTimeStamp, sample.TimeStamp, sample.TimeStamp100nSec);
}
}
Imports System.Diagnostics
Imports System.Collections
Module InstDataKeysValuesMod
Private categoryName As String
Sub Main()
Dim catNumStr As String
Dim categoryNum As Integer
Dim categories As PerformanceCounterCategory() = _
PerformanceCounterCategory.GetCategories()
Console.WriteLine( _
"These categories are registered on this computer:")
Dim catX As Integer
For catX = 0 To categories.Length - 1
Console.WriteLine("{0,4} - {1}", catX + 1, _
categories(catX).CategoryName)
Next catX
' Ask the user to choose a category.
Console.Write( _
"Enter the category number from the above list: ")
catNumStr = Console.ReadLine()
' Validate the entered category number.
Try
categoryNum = Integer.Parse(catNumStr)
If categoryNum < 1 Or categoryNum > categories.Length Then
Throw New Exception( _
String.Format("The category number must be in the " & _
"range 1..{0}.", categories.Length))
End If
categoryName = categories((categoryNum - 1)).CategoryName
Catch ex As Exception
Console.WriteLine("""{0}"" is not a valid category number." & _
vbCrLf & "{1}", catNumStr, ex.Message)
Return
End Try
' Process the InstanceDataCollectionCollection for this category.
Dim pcc As New PerformanceCounterCategory(categoryName)
Dim idColCol As InstanceDataCollectionCollection = pcc.ReadCategory()
Dim idColColKeys As ICollection = idColCol.Keys
Dim idCCKeysArray(idColColKeys.Count - 1) As String
idColColKeys.CopyTo(idCCKeysArray, 0)
Dim idColColValues As ICollection = idColCol.Values
Dim idCCValuesArray(idColColValues.Count - 1) As InstanceDataCollection
idColColValues.CopyTo(idCCValuesArray, 0)
Console.WriteLine("InstanceDataCollectionCollection for ""{0}"" " & _
"has {1} elements.", categoryName, idColCol.Count)
' Display the InstanceDataCollectionCollection Keys and Values.
' The Keys and Values collections have the same number of elements.
Dim index As Integer
For index = 0 To idCCKeysArray.Length - 1
Console.WriteLine(" Next InstanceDataCollectionCollection " & _
"Key is ""{0}""", idCCKeysArray(index))
ProcessInstanceDataCollection(idCCValuesArray(index))
Next index
End Sub
' Display the contents of an InstanceDataCollection.
Sub ProcessInstanceDataCollection(ByVal idCol As InstanceDataCollection)
Dim idColKeys As ICollection = idCol.Keys
Dim idColKeysArray(idColKeys.Count - 1) As String
idColKeys.CopyTo(idColKeysArray, 0)
Dim idColValues As ICollection = idCol.Values
Dim idColValuesArray(idColValues.Count - 1) As InstanceData
idColValues.CopyTo(idColValuesArray, 0)
Console.WriteLine(" InstanceDataCollection for ""{0}"" " & _
"has {1} elements.", idCol.CounterName, idCol.Count)
' Display the InstanceDataCollection Keys and Values.
' The Keys and Values collections have the same number of elements.
Dim index As Integer
For index = 0 To idColKeysArray.Length - 1
Console.WriteLine(" Next InstanceDataCollection " & _
"Key is ""{0}""", idColKeysArray(index))
ProcessInstanceDataObject(idColValuesArray(index))
Next index
End Sub
' Display the contents of an InstanceData object.
Sub ProcessInstanceDataObject(ByVal instData As InstanceData)
Dim sample As CounterSample = instData.Sample
Console.WriteLine(" From InstanceData:" & vbCrLf & " " & _
"InstanceName: {0,-31} RawValue: {1}", _
instData.InstanceName, instData.Sample.RawValue)
Console.WriteLine(" From CounterSample:" & vbCrLf & " " & _
"CounterType: {0,-32} SystemFrequency: {1}" & vbCrLf & _
" BaseValue: {2,-34} RawValue: {3}" & vbCrLf & _
" CounterFrequency: {4,-27} CounterTimeStamp: {5}" & vbCrLf & _
" TimeStamp: {6,-34} TimeStamp100nSec: {7}", _
sample.CounterType, sample.SystemFrequency, sample.BaseValue, _
sample.RawValue, sample.CounterFrequency, sample.CounterTimeStamp, _
sample.TimeStamp, sample.TimeStamp100nSec)
End Sub
End Module
Keterangan
Kelas InstanceDataCollection mewakili koleksi yang berisi semua data instans untuk penghitung. Koleksi ini terkandung dalam InstanceDataCollectionCollection saat menggunakan ReadCategory metode .
Konstruktor
InstanceDataCollection(String) |
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.
Menginisialisasi instans InstanceDataCollection baru kelas, menggunakan penghitung kinerja yang ditentukan (yang menentukan instans performa). |
Properti
Count |
Mendapatkan jumlah elemen yang terkandung dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
CounterName |
Mendapatkan nama penghitung kinerja yang data instansnya ingin Anda dapatkan. |
Dictionary |
Mendapatkan daftar elemen yang terkandung dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
InnerHashtable |
Mendapatkan daftar elemen yang terkandung dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
Item[String] |
Mendapatkan data instans yang terkait dengan penghitung ini. Ini biasanya sekumpulan nilai penghitung mentah. |
Keys |
Mendapatkan kunci registri objek dan penghitung untuk objek yang terkait dengan data instans ini. |
Values |
Mendapatkan nilai penghitung mentah yang terdiri dari data instans untuk penghitung. |
Metode
Clear() |
Menghapus konten instans DictionaryBase . (Diperoleh dari DictionaryBase) |
Contains(String) |
Menentukan apakah instans performa dengan nama tertentu (diidentifikasi oleh salah satu objek terindeks InstanceData ) ada dalam koleksi. |
CopyTo(Array, Int32) |
DictionaryBase Menyalin elemen ke satu dimensi Array pada indeks yang ditentukan. (Diperoleh dari DictionaryBase) |
CopyTo(InstanceData[], Int32) |
Menyalin item dalam koleksi ke array satu dimensi yang ditentukan pada indeks yang ditentukan. |
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
GetEnumerator() |
Mengembalikan yang IDictionaryEnumerator berulang melalui DictionaryBase instans. (Diperoleh dari DictionaryBase) |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetType() |
Mendapatkan dari instans Type saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
OnClear() |
Melakukan proses kustom tambahan sebelum menghapus konten instans DictionaryBase . (Diperoleh dari DictionaryBase) |
OnClearComplete() |
Melakukan proses kustom tambahan setelah menghapus konten instans DictionaryBase . (Diperoleh dari DictionaryBase) |
OnGet(Object, Object) |
Mendapatkan elemen dengan kunci dan nilai yang ditentukan dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
OnInsert(Object, Object) |
Melakukan proses kustom tambahan sebelum menyisipkan elemen baru ke DictionaryBase dalam instans. (Diperoleh dari DictionaryBase) |
OnInsertComplete(Object, Object) |
Melakukan proses kustom tambahan setelah menyisipkan elemen baru ke DictionaryBase dalam instans. (Diperoleh dari DictionaryBase) |
OnRemove(Object, Object) |
Melakukan proses kustom tambahan sebelum menghapus elemen dari DictionaryBase instans. (Diperoleh dari DictionaryBase) |
OnRemoveComplete(Object, Object) |
Melakukan proses kustom tambahan setelah menghapus elemen dari DictionaryBase instans. (Diperoleh dari DictionaryBase) |
OnSet(Object, Object, Object) |
Melakukan proses kustom tambahan sebelum mengatur nilai dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
OnSetComplete(Object, Object, Object) |
Melakukan proses kustom tambahan setelah menetapkan nilai dalam DictionaryBase instans. (Diperoleh dari DictionaryBase) |
OnValidate(Object, Object) |
Melakukan proses kustom tambahan saat memvalidasi elemen dengan kunci dan nilai yang ditentukan. (Diperoleh dari DictionaryBase) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
ICollection.IsSynchronized |
Mendapatkan nilai yang menunjukkan apakah akses ke DictionaryBase objek disinkronkan (utas aman). (Diperoleh dari DictionaryBase) |
ICollection.SyncRoot |
Mendapatkan objek yang dapat digunakan untuk menyinkronkan akses ke DictionaryBase objek. (Diperoleh dari DictionaryBase) |
IDictionary.Add(Object, Object) |
Menambahkan elemen dengan kunci dan nilai yang ditentukan ke DictionaryBasedalam . (Diperoleh dari DictionaryBase) |
IDictionary.Contains(Object) |
Menentukan apakah DictionaryBase berisi kunci tertentu. (Diperoleh dari DictionaryBase) |
IDictionary.IsFixedSize |
Mendapatkan nilai yang menunjukkan apakah DictionaryBase objek memiliki ukuran tetap. (Diperoleh dari DictionaryBase) |
IDictionary.IsReadOnly |
Mendapatkan nilai yang menunjukkan apakah objek bersifat DictionaryBase baca-saja. (Diperoleh dari DictionaryBase) |
IDictionary.Item[Object] |
Mendapatkan atau mengatur nilai yang terkait dengan kunci yang ditentukan. (Diperoleh dari DictionaryBase) |
IDictionary.Keys |
Mendapatkan objek yang ICollection berisi kunci dalam DictionaryBase objek . (Diperoleh dari DictionaryBase) |
IDictionary.Remove(Object) |
Menghapus elemen dengan kunci yang ditentukan dari DictionaryBase. (Diperoleh dari DictionaryBase) |
IDictionary.Values |
Mendapatkan objek yang ICollection berisi nilai dalam DictionaryBase objek . (Diperoleh dari DictionaryBase) |
IEnumerable.GetEnumerator() |
Mengembalikan IEnumerator yang berulang melalui DictionaryBase. (Diperoleh dari DictionaryBase) |
Metode Ekstensi
Cast<TResult>(IEnumerable) |
Mentransmisikan elemen dari ke IEnumerable jenis yang ditentukan. |
OfType<TResult>(IEnumerable) |
Memfilter elemen berdasarkan IEnumerable jenis yang ditentukan. |
AsParallel(IEnumerable) |
Mengaktifkan paralelisasi kueri. |
AsQueryable(IEnumerable) |
Mengonversi menjadi IEnumerableIQueryable. |