Bagikan melalui


Metode IHostSyncManager::CreateSemaphore

Membuat objek IHostSemaphore untuk runtime bahasa umum (CLR) yang digunakan sebagai semafor untuk peristiwa tunggu.

Sintaks

HRESULT CreateSemaphore (  
    [in]  DWORD dwInitial,  
    [in]  DWORD dwMax,  
    [out] IHostSemaphore **ppSemaphore  
);  

Parameter

dwInitial
[in] Jumlah awal untuk ppSemaphore.

dwMax
[in] Jumlah maksimum untuk ppSemaphore.

ppSemaphore
[out] Penunjuk ke alamat instans IHostSemaphore, atau null jika semafor tidak dapat dibuat.

Tampilkan Nilai

HRESULT Deskripsi
S_OK CreateSemaphore berhasil dikembalikan.
HOST_E_CLRNOTAVAILABLE Runtime bahasa umum belum dimuat ke dalam proses, atau runtime bahasa umum dalam status yaitu tidak dapat menjalankan kode aman atau memproses panggilan dengan sukses.
HOST_E_TIMEOUT Waktu panggilan habis.
HOST_E_NOT_OWNER Pemanggil tidak memiliki kunci.
HOST_E_ABANDONED Peristiwa dibatalkan saat rangkaian atau fiber yang diblokir sedang menunggunya.
E_FAIL Kegagalan katastrofe yang tidak diketahui terjadi. Saat metode menampilkan E_FAIL, CLR tidak lagi dapat digunakan dalam proses. Panggilan berikutnya ke metode hosting menampilkan HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Tidak tersedia cukup memori untuk membuat objek peristiwa yang diminta.

Keterangan

CreateSemaphore mencerminkan fungsi Win32 yang memiliki nama yang sama. Parameter dwInitial dan dwMax menggunakan semantik yang sama untuk jumlah semafor sebagai parameter lInitialCount dan lMaximumCount Win32. dwInitial harus antara nol dan dwMax, inklusif. dwMax harus lebih besar dari nol.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: MSCorEE.h

Pustaka: Disertakan sebagai sumber daya di MSCorEE.dll

Versi .NET Framework: Tersedia mulai dari 2.0

Lihat juga