Monitor.IsEntered Method

.NET Framework 4.5

Determines whether the current thread holds the lock on the specified object.

Namespace:  System.Threading
Assemblies:   mscorlib (in mscorlib.dll)
  System.Threading (in System.Threading.dll)

public static bool IsEntered(
	Object obj


Type: System.Object

The object to test.

Return Value

Type: System.Boolean
true if the current thread holds the lock on obj; otherwise, false.


obj is null.

This method works only for locks that are acquired by using the methods of the Monitor class, or by using the C# lock statement or the Visual Basic SyncLock statement, which are implemented with Monitor.

Use this method with diagnostic tools, such as the Assert method and the Contract class, to debug locking issues that involve the Monitor class.

.NET Framework

Supported in: 4.6, 4.5

.NET for Windows Store apps

Supported in: Windows 8

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2014 Microsoft