首页 新闻 会员 周边

C#中lock一把锁后,在方法中继续lock该锁,在背后发生了什么?

0
[待解决问题]

程序如下:

运行结果如下:

问题:其中lockHelper的锁被线程myThread获取后,执行test方法中在同一线程中,再次lock该锁,是lockHelper有多把锁,还是方法执行中,检测到锁已锁定,就不管了?还是其他什么情况?

.chenjiawei.的主页 .chenjiawei. | 菜鸟二级 | 园豆:202
提问于:2014-06-19 12:03
< >
分享
所有回答(3)
0

检测到同一线程已加锁后,会在锁上面递增计数。

Launcher | 园豆:45045 (高人七级) | 2014-06-19 13:14

十分感谢。能否额外贴一个介绍此专题的网址。

支持(0) 反对(0) .chenjiawei. | 园豆:202 (菜鸟二级) | 2014-06-19 13:30

您好,请问这样做的目的是什么?同一线程已加锁,又在线程中加同一把锁

支持(0) 反对(0) wanglian173 | 园豆:202 (菜鸟二级) | 2020-04-26 13:44
0

我是学Java的,不懂C#,但是,根据多线程的处理,第一次Lock(lockHelper)后,其他的线程就要等待。第二次使用lock(lockHelper),只是重入锁而已。

乐享程序员 | 园豆:930 (小虾三级) | 2014-08-04 20:45
0

请问一下这样做的目的是什么

wanglian173 | 园豆:202 (菜鸟二级) | 2020-04-26 13:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册