【发布时间】:2011-02-26 14:44:32
【问题描述】:
我认为我的观点很明确,在任何情况下,这会引发空引用异常吗?即在尝试访问其 Count 属性时反对 e.Result 为空。
if (e.Result == null || e.Result.Count == 0)
return;
编辑:为了充分了解这个问题(对于后来的提问者),我们将如何防止该异常发生,我们可以使用lock 语句吗?怎么样?
【问题讨论】:
-
后两个问题的答案是(1)是的,(2)视情况而定。假设您构建了正确的锁并设法在不崩溃的情况下获得“计数”。然后你解锁结果,它会变异为有一个不同的计数。 你打算如何处理你刚刚成功捕获的现在不准确的计数? 用不正确的计数做任何事情似乎很危险。为多线程场景提供一般建议是没有意义的;给我们一个现实的场景,我们可以提供建议。
标签: c# if-statement nullreferenceexception logical-operators