在VS2008的命令行里面输入
- ildasm
然后按步骤操作。
图1
图4
图4源自下面的代码。
-
namespace MinitorCase
-
{
-
class Program
-
{
-
public static void MyLock()
-
{
-
lock (typeof(Program))
-
{
-
}
-
}
-
static void Main(string[] args)
-
{
-
MyLock();
-
}
-
}
- }
可以看到,一个lock操作,在IL层时是被拆成一个Monitor.Enter和Monitor.Exit来完成的。