.net接口并发时怎么实现同步?

[HttpGet("TestAsync")]
public bool TestAsync(string instanceid)
{
var instance = _wfInstanceRepository.GetAll().Where(i => i.PKID == instanceid && i.FrontCheckStatus == null).FirstOrDefault();
if(instance == null)
{
return false;
}
else
{
instance.FrontCheckStatus = 2;
System.Threading.Thread.Sleep(3000);
_wfInstanceRepository.Update(instance);
return true;
}
}


以上接口,连续请求两次,都返回true。试过用lock加锁,依然没用。。还有别的方法吗?

https://www.cnblogs.com/williamwsj/p/9719529.html