コード例 #1
0
        public int GetThreadId()
        {
            int threadId = 0;

            if (UnmanagedCodePermissionAvailable)
            {
                try
                {
                    threadId = ChoKernel32Core.GetCurrentThreadId();
                }
                catch (Exception e)
                {
                    if (ChoTrace.ChoSwitch.TraceError)
                    {
                        Trace.WriteLine(ChoApplicationException.ToString(e));
                    }
                }
            }
            else
            {
                if (ChoTrace.ChoSwitch.TraceError)
                {
                    Trace.WriteLine("Failed to retrieve value due to unmanaged code permission denied.");
                }
            }

            return(threadId);
        }
コード例 #2
0
        public static int GetThreadId()
        {
            int threadId = 0;

            if (UnmanagedCodePermissionAvailable)
            {
                try
                {
                    threadId = ChoKernel32Core.GetCurrentThreadId();
                }
                catch (Exception ex)
                {
                    threadId = System.Threading.Thread.CurrentThread.ManagedThreadId;
                    Trace(ChoTrace.ChoSwitch.TraceError, ex.ToString());
                }
            }
            else
            {
                threadId = System.Threading.Thread.CurrentThread.ManagedThreadId;
                Trace(ChoTrace.ChoSwitch.TraceError, "Failed to retrieve value due to unmanaged code permission denied.");
            }

            return(threadId);
        }