日期:2014-05-18  浏览次数:21388 次

在Lock的作用域中是否可以执行return操作?
在Lock的作用域中是否可以执行return操作?
例如
 do
  {
  lock (inMemoryCache.SyncRoot)
  {

  cacheItemBeforeLock = (TCacheItem)inMemoryCache[key];
if(cacheItemBeforeLock==null)
{
return;
}
  lockWasSuccessful = Monitor.TryEnter(cacheItemBeforeLock);
  }

  if (lockWasSuccessful == false)
  {
  Thread.Sleep(0);
  }
  } while (lockWasSuccessful == false);

------解决方案--------------------
可以