我知道在创建 DLL 并将项目声明为“共享”(C# 中的静态)时,它们在第一次调用时被实例化,然后该对象引用作为单个引用继续存在。
因此,一旦设置了共享字符串属性,就可以再次调用以检索相同的值。然后,线程安全是应用程序域中的一个主要问题。
在应用程序域之外会发生什么。如果我们将程序集放在全局应用程序缓存 (GAC) 中,将存在多少个实例?
例如,GAC'ed .dll 中名为“MyFileName”的静态属性。
然后我们有两个应用程序调用 GAC 的 .dll。将存在多少个“MyFileName”实例?应用程序一对 MyFileName 的更改是否会复制到应用程序二使用的值?