如何锁定对象如何发现? C#

时间:2009-06-16 14:46:34

标签: c# design-patterns locking

我的代码锁定了。
我有两个线程同时运行。   如何判断线程是否锁定该对象?

private readonly object _lockObject = new Object();

// Both methods running
public void Method1()
{
    if(certainCriteria)
    {
        lock(_lockObject)
        {
        //doWork;
        }
    }
}

// Both methods running
public void Method2()
{
    if( isLocked?(_lockObject))
    {
        //doWork;
    }
}

有人有isLocked吗?方法

提前致谢!

1 个答案:

答案 0 :(得分:8)

可能使用Monitor.TryEnter(超时为0,或者根本没有超时),然后立即调用Monitor.Exit成功 - 但我会说这通常是一个糟糕的设计气味。特别是,数据在您返回后立即失效。

你想要达到什么目标?