Udostępnij za pośrednictwem


IHostSyncManager Interface

Provides methods that allow the common language runtime (CLR) to create synchronization primitives by calling the host instead of using the Win32 synchronization functions.

interface IHostSyncManager : IUnknown {
    HRESULT CreateAutoEvent (
        [out] IHostAutoEvent **ppEvent
    );
    HRESULT CreateCrst(
        [out] IHostCrst** ppCrst
    );
    HRESULT CreateCrstWithSpinCount (
        [in] DWORD dwSpinCount,
        [out] IHostCrst** ppCrst
    );
    HRESULT CreateManualEvent (
        [in] BOOL bInitialState,
        [out] IHostManualEvent **ppEvent
    );
    HRESULT CreateMonitorEvent (
        [in] SIZE_T Cookie,
        [out] IHostAutoEvent **ppEvent
    );
    HRESULT CreateRWLockReaderEvent (
        [in] BOOL bInitialState,
        [in] SIZE_T Cookie,
        [out] IHostManualEvent **ppEvent
    );
    HRESULT CreateRWLockWriterEvent (
        [in] SIZE_T Cookie,
        [out] IHostAutoEvent **ppEvent
    );
    HRESULT CreateSemaphore (
        [in] DWORD dwInitial,
        [in] DWORD dwMax,
        [out] IHostSemaphore **ppSemaphore
    ); 
    HRESULT SetCLRSyncManager (
        [in] ICLRSyncManager *pManager
    );
};

Methods

Method

Description

IHostSyncManager::CreateAutoEvent Method

Creates an auto-reset event object.

IHostSyncManager::CreateCrst Method

Creates a critical section object for synchronization.

IHostSyncManager::CreateCrstWithSpinCount Method

Creates a critical section object with spin count for synchronization.

IHostSyncManager::CreateManualEvent Method

Creates a manual-reset event object.

IHostSyncManager::CreateMonitorEvent Method

Creates a monitored auto-reset event object.

IHostSyncManager::CreateRWLockReaderEvent Method

Creates a manual-reset event object for the implementation of a reader lock.

IHostSyncManager::CreateRWLockWriterEvent Method

Creates an auto-reset event object for the implementation of a writer lock.

IHostSyncManager::CreateSemaphore Method

Creates an IHostSemaphore object for the CLR to use as a semaphore for wait events.

IHostSyncManager::SetCLRSyncManager Method

Sets the ICLRSyncManager instance to associate with the current IHostSyncManager instance.

Remarks

The CLR discovers the host's implementation of IHostSyncManager by calling the IHostControl::GetHostManager method with an IID of IID_IHostSyncManager.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: MSCorEE.idl

Library: Included as a resource in MSCorEE.dll

.NET Framework Version: 2.0

See Also

Concepts

ICLRSyncManager Interface

Hosting Interfaces