IHostSyncManager::CreateSemaphore (Método)
Crea un objeto IHostSemaphore para que Common Language Runtime (CLR) lo utilice como semáforo para los eventos de espera.
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
Parámetros
dwInitial
[in] Recuento inicial para ppSemaphore.dwMax
[in] Número máximo para ppSemaphore.ppSemaphore
[out] Puntero a la dirección de una instancia de IHostSemaphore, o null si no se ha podido crear el semáforo.
Valor devuelto
HRESULT |
Descripción |
---|---|
S_OK |
CreateSemaphore finalizó correctamente. |
HOST_E_CLRNOTAVAILABLE |
CLR no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente. |
HOST_E_TIMEOUT |
Se agotó el tiempo de espera de la llamada. |
HOST_E_NOT_OWNER |
El llamador no posee el bloqueo. |
HOST_E_ABANDONED |
Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole. |
E_FAIL |
Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY |
No había suficiente memoria disponible para crear el objeto de evento solicitado. |
Comentarios
CreateSemaphore refleja la función de Win32 que tiene el mismo nombre. Los parámetros dwMax y dwInitial usan la misma semántica para el recuento del semáforo que los parámetros lMaximumCount y lInitialCount de Win32, respectivamente. dwInitial debe estar comprendido entre cero y dwMax, ambos incluidos. dwMax debe ser mayor que cero.
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: MSCorEE.h
Biblioteca: Se incluye como recurso en MsCorEE.dll
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0