dchamba
dchamba

Reputation: 115

Static members behavior with multiple instance of application - C#

I'm working on my Window Application and i'm using some static members.

public class MyParameter
{
    public static string connectionString = "...";
}

Now if I install my application on computer and open two instance of same application. Will 'connectionString' common to the two instances?? Or every instance has its connectionString ?

Upvotes: 9

Views: 5136

Answers (3)

Tigran
Tigran

Reputation: 62276

The variable static or not is a part of your application memory. When you open 2 instances of your application you create two distinct memory locations in the OS, so there is not any relation between those 2 variables at all.

If you want to create one (relation), you have to look on different IPC (Inter Process Communication) methods available in OS, like:

Upvotes: 13

Vimal CK
Vimal CK

Reputation: 3563

No, Each application instance are isolated from one another using AppDomain. Thus each application instance will run in a seperate AppDomain and cannot access the variables from other domain. To do communicate with different domain we need to use Remoting , WCF Service

Upvotes: 4

Simon Whitehead
Simon Whitehead

Reputation: 65077

Every instance.

Static members are allocated on a per AppDomain basis. If you were to spawn a new AppDomain from within your current one.. they would be different.

Upvotes: 3

Related Questions