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 |
---|---|
Creates an auto-reset event object. |
|
Creates a critical section object for synchronization. |
|
Creates a critical section object with spin count for synchronization. |
|
Creates a manual-reset event object. |
|
Creates a monitored auto-reset event object. |
|
Creates a manual-reset event object for the implementation of a reader lock. |
|
Creates an auto-reset event object for the implementation of a writer lock. |
|
Creates an IHostSemaphore object for the CLR to use as a semaphore for wait events. |
|
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