Пример #1
0
        public static NativeThread Open(UInt32 threadId, ThreadAcccessRights access = ThreadAcccessRights.All, bool inheritable = false)
        {
            SafeThreadHandle handle = OpenThread((UInt32)access, inheritable, threadId);

            if (handle.IsInvalid)
            {
                throw new Win32Exception();
            }
            return(new NativeThread(handle));
        }
Пример #2
0
		public NativeThread Open(ThreadAcccessRights rights = ThreadAcccessRights.All, bool inheritable = false) {
			return NativeThread.Open(ThreadId, rights, inheritable);
		}
Пример #3
0
        public NativeThread Reopen(ThreadAcccessRights rights = ThreadAcccessRights.All, bool inheritable = false)
        {
            var rawHandle = SafeKernelObjHandle.DuplicateHandleLocal(handle.DangerousGetHandle(), (uint)rights, inheritable, SafeKernelObjHandle.DuplicateOptions.None);

            return(new NativeThread(new SafeThreadHandle(rawHandle)));
        }