26 AppDomain.CurrentDomain.ProcessExit +=
OnExit;
27 AppDomain.CurrentDomain.DomainUnload +=
OnExit;
51 thread.IsBackground =
true;
106 pendingOp.Async.IsCompleted =
true;
static void AddNewPendingCall(ManagedCallType callType, uint arg)
static void ThrowExceptionFromResult(uint result)
static IntPtr CreateEvent(ref SecurityAttributes lpEventAttributes, [MarshalAs(UnmanagedType.Bool)] bool bManualReset, [MarshalAs(UnmanagedType.Bool)] bool bInitialState, IntPtr lpName)
static int SetEvent(IntPtr hEvent)
static Dictionary< uint, PendingOperation > pendingOperations
static IAsyncResult AddPendingOperation(uint kernelHandle, AsyncCallback callback, object asyncState, bool isReusable, AsyncOperationCleanup operationCleanup)
static KernelReturnCode WaitForAsyncOperationToFinish(out ManagedCallType managedCallType, out uint managedCallArgs)
static void AsyncDispatcherThreadFunction()
static void HandleFinishedOperation(uint finishedHandle)
static bool CallbackGoesToDispatcher(ManagedCallType managedCallType)
static SafeWaitHandle parentExitEvent
static bool OperationStillPending(XOverlappedAsyncResult result)
static readonly object PendingOperationsLock
static void OnExit(object sender, EventArgs e)
static IAsyncResult AddPendingOperation(uint kernelHandle, AsyncCallback callback, object asyncState)
static unsafe void PlatformSpecificInitialize()
static void HandleManagedCallback(ManagedCallType managedCallType, uint managedCallArgs)
static unsafe int Initialize(void *parentExitEvent)
static WindowsManagedCallbackHandler Instance
static bool QueueUserWorkItem(WaitCallback callBack)
static readonly IntPtr Zero