diff options
| author | jluce50 <jeremyluce@gmail.com> | 2015-03-03 14:07:18 -0600 |
|---|---|---|
| committer | jluce50 <jeremyluce@gmail.com> | 2015-03-03 14:07:18 -0600 |
| commit | 0be639e68a52b6633f9d81ea7249dbc10598a5dd (patch) | |
| tree | 41e2e2e41a1b86bb1668727e984ada957a31b53d /MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs | |
| parent | 6c2e01830c7234438b879af633caaf415f560a5a (diff) | |
Close thread handle after suspend/resume (per MSDN ms684335)
Diffstat (limited to 'MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs')
| -rw-r--r-- | MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs b/MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs index f3497aef5..413e19239 100644 --- a/MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs +++ b/MediaBrowser.ServerApplication/Native/WindowsProcessManager.cs @@ -29,8 +29,11 @@ namespace MediaBrowser.ServerApplication.Native static extern IntPtr OpenThread(ThreadAccess dwDesiredAccess, bool bInheritHandle, uint dwThreadId); [DllImport("kernel32.dll")] static extern uint SuspendThread(IntPtr hThread); - [DllImport("kernel32.dll")] - static extern int ResumeThread(IntPtr hThread); + [DllImport("kernel32.dll")]
+ static extern int ResumeThread(IntPtr hThread);
+ [DllImport("kernel32.dll")]
+ [return: MarshalAs(UnmanagedType.Bool)]
+ public static extern bool CloseHandle(IntPtr hObject); public static void Suspend(this Process process) { @@ -41,7 +44,8 @@ namespace MediaBrowser.ServerApplication.Native { break; } - SuspendThread(pOpenThread); + SuspendThread(pOpenThread);
+ CloseHandle(pOpenThread); } } public static void Resume(this Process process) @@ -52,8 +56,9 @@ namespace MediaBrowser.ServerApplication.Native if (pOpenThread == IntPtr.Zero) { break; - } - ResumeThread(pOpenThread); + }
+ ResumeThread(pOpenThread);
+ CloseHandle(pOpenThread); } } public static void Print(this Process process) |
