Aracılığıyla paylaş


IHostSyncManager::CreateSemaphore Yöntemi

Ortak dil çalışma zamanının (CLR) bekleme olayları için semafor olarak kullanması için bir IHostSemaphore nesnesi oluşturur.

Sözdizimi

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

Parametreler

dwInitial
[in] için ppSemaphoreilk sayı.

dwMax
[in] için ppSemaphoreen fazla sayıdır.

ppSemaphore
[out] Örneğin adresine yönelik bir IHostSemaphore işaretçi veya semafor oluşturulamadıysa null.

Dönüş Değeri

HRESULT Description
S_OK CreateSemaphore başarıyla döndürüldü.
HOST_E_CLRNOTAVAILABLE CLR bir işleme yüklenmedi veya CLR yönetilen kodu çalıştıramadığı veya çağrıyı başarıyla işleyemediği bir durumda.
HOST_E_TIMEOUT Arama zaman aşımına uğradı.
HOST_E_NOT_OWNER Arayan, kilidin sahibi değil.
HOST_E_ABANDONED Engellenen bir iş parçacığı veya fiber beklerken bir olay iptal edildi.
E_FAIL Bilinmeyen bir yıkıcı hata oluştu. Bir yöntem E_FAIL döndürdüğünde, CLR artık işlem içinde kullanılamaz. Barındırma yöntemlerine yapılan sonraki çağrılar HOST_E_CLRNOTAVAILABLE döndürür.
E_OUTOFMEMORY İstenen olay nesnesini oluşturmak için yeterli bellek yok.

Açıklamalar

CreateSemaphore aynı ada sahip Win32 işlevini yansıtır. dwInitial ve dwMax parametreleri sırasıyla Win32 lInitialCount ve lMaximumCount parametreleriyle semafor sayısı için aynı semantiği kullanır. dwInitial sıfır ile dwMaxarasında (dahil) olmalıdır. dwMax sıfırdan büyük olmalıdır.

Gereksinimler

Platform: Bkz. Sistem Gereksinimleri.

Üstbilgi: MSCorEE.h

Kitaplığı: MSCorEE.dll'da kaynak olarak dahil edilen

.NET Framework Sürümleri: 2.0 sürümünden itibaren kullanılabilir

Ayrıca bkz.