“ThrowHelper”.Net Framework 类如何帮助减少生成的 IL 代码?

use*_*802 6 c# intermediate-language except

我正在看这个,它的起始评论说它存在,因为

throw new ArgumentNullException("key", Environment.GetResourceString("ArgumentNull_Key"));
Run Code Online (Sandbox Code Playgroud)

生成的 IL 代码多于

ThrowHelper.ThrowArgumentNullException(ExceptionArgument.key, ExceptionResource.ArgumentNull_Key);
Run Code Online (Sandbox Code Playgroud)

我在代码中找不到它,但就像它的类似方法一样,我假设只是调用throw new ArgumentNullException("key", Environment.GetResourceString("ArgumentNull_Key"));或其他东西。

ThrowHelper 类是否真的有助于减少生成的 IL 代码,或者考虑到从 生成的 IL 代码,它是否相同(或更多)ThrowHelper.ThrowArgumentNullException(ExceptionArgument.key, ExceptionResource.ArgumentNull_Key);

编辑:文件开头的注释中显示的 IL 仅来自对该ThrowHelper.ThrowArgumentNullException(ExceptionArgument.key, ExceptionResource.ArgumentNull_Key);方法内的实际代码的调用。还是我错了?