DkmComponentManager Class

Definition

Provides services from the Dispatcher for initializing threads.

public ref class DkmComponentManager abstract sealed
public ref class DkmComponentManager abstract sealed
class DkmComponentManager abstract sealed
public static class DkmComponentManager
type DkmComponentManager = class
Public Class DkmComponentManager
Inheritance
DkmComponentManager

Properties

CurrentComponentId

Obtains the component ID which is running on this thread.

IdeComponentId

Component id which can be used by IDE components that wish to call into the debugger engine API from their own worker threads. This value can be used to pass to DkmComponentManager.InitializeThread().

Methods

AllowComponentReentrancy()

Release the component lock for a synchronized component. This can be very dangerous as it will allow component re-entrancy. The normal way to use this is to release the lock on a call that exits a compoent and retake the lock as soon as the call completes.

DisableComponentReentrancy()

Relock a synchronized component after a call to ReleaseComponentLock. This can be very dangerous as it will allow component re-entrancy. The normal way to use this is to release the lock on a call that exits a compoent and retake the lock as soon as the call completes.

FindComponentHandle(Guid)

Searches for a component handle based on the Guid. This can be used to subsequent calls to InitializeThreadByHandle and UninitializeThreadByHandle without searching for the component again.

InitializeThread(Guid)

Initialize a thread with the component manager. This is necessary when a component creates one or more worker threads. InitializeThread should only be called once, and must have a matching call to UninitializeThread.

InitializeThread(Guid, Boolean)

Initialize a thread with the component manager. This is necessary when a component creates one or more worker threads. InitializeThread should only be called once, and must have a matching call to UninitializeThread.

InitializeThread(IntPtr, Boolean)

Initialize a thread with the component manager. InitializeThreadByHandle should only be called once, and must have a matching call to UninitializeThreadByHandle.

IsApiVersionSupported(DkmApiVersion)

API to test the installed version of the Dispatcher.

PopComponentTransition(IntPtr)

Undocumented

PushComponentTransition(IntPtr)

Undocumented

ReportCurrentNonFatalException(Exception, String)

This allows reporting of a non-fatal exception from a Concord component. This must be called from an exception filter.

UninitializeThread(Guid)

Clean up a thread which was previously initialized with a call to DkmComponentManager.InitializeThread.

UninitializeThread(IntPtr)

Clean up a thread which was previously initialized with a call to DkmComponentManager.InitializeThreadByThread.

Applies to