Dev*_*rke 21 c# dll static static-variables static-libraries
我知道Web应用程序中使用的静态变量是为Web应用程序中的所有用户共享的.如果我有一个使用某个静态私有变量的库(DLL),那么使用该库的所有应用程序是否共享该变量的值?
例如,假设我的DLL中有以下代码:
private static bool isConnected = false;
public static void Connect()
{
// TODO: Connect.
isConnected = true;
}
public static void Disconnect()
{
// TODO: Disconnect.
isConnected = false;
}
Run Code Online (Sandbox Code Playgroud)
然后,在应用程序A,我把myDLL.Connect()
它设置的值isConnected
来True
.然后我有一些应用程序B执行相同的操作.如果应用程序稍后调用myDLL.Disconnect()
,并应用B见isConnected
为False
,因为这两个应用程序共享同一个静态变量相同的DLL文件?在这种情况下,DLL文件在同一文件路径中实际上是相同的文件.
Mrc*_*ief 26
不,他们不会.它们是分开加载的,AppDomains
无法看到彼此的实例.
即使它们引用相同的物理文件,每个应用程序也会获得自己的程序集私有实例.
归档时间: |
|
查看次数: |
6014 次 |
最近记录: |