C#:如果我试图锁定一个锁定的对象会怎样?

时间:2017-07-30 06:25:11

标签: c# multithreading locking

例如 -

Object obj = new Object();

然后我用lock(obj)

锁定一个部分

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

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

1 个答案:

答案 0 :(得分:2)

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