应用程序静态成员应该是线程安全的:
公共静态(在Visual中共享) 基本)这种类型的成员是线程 安全。另外,还有FindResource 和TryFindResource方法和 属性和资源属性 是线程安全的。1
在调用System.Windows.Application的静态成员方法时,我们可以在多线程环境中信任该语句多少?
更新
这都是对这个问题的引用:Threading errors with Application.LoadComponent (key already exists)
我从未想过我会在图书馆看到一个真正的错误,但这对我来说一定是这一天......这个问题似乎表明了一个真正的错误。通常它是“用户错误”,但似乎并非如此。
答案 0 :(得分:2)
这是.Net框架和相关库的一般模式。除非另有标记,否则假定静态/共享成员是线程安全的。如果您发现一个非线程安全且在文档中未标记为成员的成员,那么它就是一个错误(在文档或实现中)。
因此我认为依赖它们是线程安全的是安全的。
答案 1 :(得分:1)
一般情况下,您应该首先信任文档,但如果事情不像宣传的那样工作,请停止信任。
在这种情况下,由于WPF中的错误,文档是错误的。有关该错误的详细信息,请参阅this answer。