AppDomain.GetCurrentThreadId Method (System)

Switch View :
ScriptFree
.NET Framework Class Library
AppDomain.GetCurrentThreadId Method

Note: This API is now obsolete. The non-obsolete alternative is ManagedThreadId.

Gets the current thread identifier.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic
<ObsoleteAttribute("AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread.  http://go.microsoft.com/fwlink/?linkid=14202",  _
	False)> _
Public Shared Function GetCurrentThreadId As Integer
C#
[ObsoleteAttribute("AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread.  http://go.microsoft.com/fwlink/?linkid=14202", 
	false)]
public static int GetCurrentThreadId()
Visual C++
[ObsoleteAttribute(L"AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread.  http://go.microsoft.com/fwlink/?linkid=14202", 
	false)]
public:
static int GetCurrentThreadId()
F#
[<ObsoleteAttribute("AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread.  http://go.microsoft.com/fwlink/?linkid=14202", 
    false)>]
static member GetCurrentThreadId : unit -> int 

Return Value

Type: System.Int32
A 32-bit signed integer that is the identifier of the current thread.
Remarks

Use the Thread.ManagedThreadId property, which is stable even when the .NET Framework is hosted by an environment that supports fibers (that is, lightweight threads).

Version Information

.NET Framework

Supported in: 1.1, 1.0
Obsolete (compiler warning) in 4
Obsolete (compiler warning) in 3.5
Obsolete (compiler warning) in 3.5 SP1
Obsolete (compiler warning) in 3.0
Obsolete (compiler warning) in 3.0 SP1
Obsolete (compiler warning) in 3.0 SP2
Obsolete (compiler warning) in 2.0
Obsolete (compiler warning) in 2.0 SP1
Obsolete (compiler warning) in 2.0 SP2

.NET Framework Client Profile

Obsolete (compiler warning) in 4
Obsolete (compiler warning) in 3.5 SP1
.NET Framework Security

  • SecurityPermission  

    to call this method. Associated enumeration: SecurityPermissionFlag.UnmanagedCode. Security action: Demand.

Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also

Reference

Community Content

DanielRose
Needed for native interop
Unmanaged code cannot use the managed thread id, so this method is still necessary for interop with native code.