.net C#静态Func属性是什么时候生成的?在应用程序启动时还是第一次访问时?

xyhw6mcr  于 2023-04-07  发布在  .NET
关注(0)|答案(1)|浏览(124)

👋🏻 我正在看一个C#学习视频,在里面,作者有一些private static readonly Func<....> GetMoviesAsync = ....;属性。

作者说这些静态属性是在应用程序启动时生成/编译的。
我以为静态属性是在 * 首次访问 * 时生成的..而不是应用程序启动时?

sshcrbum

sshcrbum1#

没有任何精确的时刻。如果有一个静态构造函数,那么所有的静态属性都保证在构造函数体执行之前被初始化。如果没有静态ctor,那么静态属性保证在类第一次使用之前被初始化。我所说的“之前”并没有严格定义。我想,在CLR认为合适的任何时刻。

相关问题