我的代码锁定了。
我有两个线程同时运行。
如何判断线程是否锁定该对象?
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吗?方法
提前致谢!
答案 0 :(得分:8)
你可能使用Monitor.TryEnter
(超时为0,或者根本没有超时),然后立即调用Monitor.Exit
成功 - 但我会说这通常是一个糟糕的设计气味。特别是,数据在您返回后立即失效。
你想要达到什么目标?