【发布时间】:2013-07-24 17:43:59
【问题描述】:
我的问题是,如果我在两个单独的方法中有两条关键路径,那么第二种方法中的锁是否尊重第一种方法中的锁?
例如在下面的虚拟代码中,如果method1被线程A调用,method2被线程B调用,线程B是否在进入@987654323中的关键路径之前等待线程A释放锁@?
private static readonly object mylock = new object();
public void method1()
{
lock(mylock)
{
// critical path 1
}
}
public void method2()
{
lock(mylock)
{
// critical path 2
}
}
【问题讨论】:
-
是的,如果
lock object相同
标签: c# .net multithreading concurrency mutex