Bagikan melalui


Fungsi PerfCreateInstance (perflib.h)

Membuat instans set penghitung yang ditentukan. Penyedia menggunakan fungsi ini.

Sintaks

PPERF_COUNTERSET_INSTANCE PerfCreateInstance(
  [in] HANDLE  ProviderHandle,
  [in] LPCGUID CounterSetGuid,
  [in] PCWSTR  Name,
  [in] ULONG   Id
);

Parameter

[in] ProviderHandle

Handel penyedia. Gunakan variabel handel yang dihasilkan alat CTRPP untuk Anda. Untuk nama variabel, lihat atribut simbol elemen penyedia .

Windows Vista: Fungsi PerfStartProvider mengembalikan handel.

[in] CounterSetGuid

GUID yang secara unik mengidentifikasi set penghitung yang ingin Anda buat instansnya. Ini adalah GUID yang sama yang ditentukan dalam atribut guid dari elemen counterSet . Gunakan variabel GUID yang dihasilkan alat CTRPP untuk Anda. Untuk nama variabel, lihat atribut simbol dari elemen counterSet .

Windows Vista: Variabel GUID tidak tersedia.

[in] Name

Untai (karakter) Unicode yang dihentikan null yang berisi nama unik untuk instans ini.

[in] Id

Pengidentifikasi unik untuk instans set penghitung ini. Pengidentifikasi dapat menjadi nomor seri yang Anda tingkatkan untuk setiap instans baru.

Nilai kembali

Struktur PERF_COUNTERSET_INSTANCE yang berisi instans set penghitung atau NULL jika PERFLIB tidak dapat membuat instans. Cache pointer ini untuk digunakan dalam panggilan nanti alih-alih memanggil PerfQueryInstance untuk mengambil pointer ke instans.

Fungsi ini mengembalikan NULL jika terjadi kesalahan. Untuk menentukan kesalahan yang terjadi, panggil GetLastError.

Keterangan

Penyedia menentukan kapan instans dibuat. Jika data penghitung lebih statis, penyedia dapat membuat instans pada waktu inisialisasi. Misalnya, jumlah prosesor di komputer akan dianggap statis, sehingga penyedia yang menyediakan data penghitung untuk prosesor dapat membuat instans untuk setiap prosesor di komputer pada waktu inisialisasi. Untuk penghitung yang lebih dinamis, seperti penghitung disk atau proses, penyedia akan membuat instans baru sebagai respons terhadap perangkat USB baru yang ditambahkan atau proses baru sedang dibuat.

Ketika penyedia memanggil fungsi ini, PERFLIB mengalokasikan memori lokal untuk instans baru dan membangun blok instans. PERFLIB menghapus memori saat penyedia memanggil fungsi PerfDeleteInstance .

Instans berisi data penghitung mentah. Penyedia menggunakan tiga fungsi berikut untuk memperbarui data penghitung mentah:

Biasanya, penyedia selalu memperbarui data penghitung setiap saat. Sebagai alternatif, penyedia dapat menerapkan fungsi ControlCallback dan menggunakan kode permintaan PERF_COLLECT_START untuk memicu pembaruan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header perflib.h
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

PerfDeleteInstance

PerfQueryInstance