静态方法:他们会在其范围内共享任何内容吗?

时间:2011-11-23 11:14:51

标签: c# .net static

如果这是一个愚蠢的问题,我很抱歉。例如,如果两个线程调用Foo.StaticBar(),那么这两个方法的范围是否会共享?例如,方法的局部变量等?我知道类变量和属性将被共享

2 个答案:

答案 0 :(得分:3)

不,本地变量不会被共享,因为它们是您正在调用的静态方法的本地变量。

唯一共享的是静态方法之外但在类中的状态,即静态成员变量。

答案 1 :(得分:1)

每次调用方法时,局部变量都是私有的。如果该方法使用在方法之外声明的任何资源(例如静态字段),则将为这两个调用共享该资源。