繁体   English   中英

有条件的 null 检查上的 NullReferenceException

[英]NullReferenceException on a conditional null check

对于以下代码行:

Class1 Obj1 = GetObjByID(ID); 
if (Obj1!= null) 
{ 
     Obj1.IsAgentReserved = true; // causing exception here
     Obj2.EstDeviceID = Obj1.Extension; 
}

我有异常“System.NullReferenceException:Object 引用未设置为 object 的实例。” 在 Obj1.IsAgentReserved = true;,虽然我在此之前已经放置了 null 检查。

可能的原因是什么? 这偶尔会发生,我无法重现它。

我检查了以下内容:
1. != 运算符没有重载
2. Stacktrace 对我来说似乎是正确的
3. 当前版本的代码与堆栈跟踪匹配

这可能发生在多线程应用程序中,其中另一个线程在您的.null 检查和使用之间删除了 object。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM