Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12524749
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: C#/.net

2013-04-01 16:57:14

在VS2008的命令行里面输入


  1. ildasm


然后按步骤操作。

image

图1

 

image 图2

 

image 图3

 

image

图4

图4源自下面的代码。


  1. namespace MinitorCase
  2. {
  3.     class Program
  4.     {
  5.         public static void MyLock()
  6.         {
  7.             lock (typeof(Program))
  8.             {
  9.             }
  10.         }
  11.         static void Main(string[] args)
  12.         {
  13.             MyLock();
  14.         }
  15.     }
  16. }



    可以看到,一个lock操作,在IL层时是被拆成一个Monitor.Enter和Monitor.Exit来完成的。

阅读(2753) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~