C#:如果我尝试锁定锁定的对象,会发生什么情况?



例如--

Object obj = new Object();

然后我用lock(obj)锁定一个部分

我锁定其他部分也lock(obj)

如果一个线程位于第一部分中,这是否意味着另一个线程也被锁定?

锁定是在对象上完成的,而不是在代码的部分或位置上完成的。如果一个线程在第一个位置获取锁,则第二个线程无法将其带到任何地方 - 无论是在同一位置还是在任何其他位置

相关内容

最新更新