【问题标题】:static method: will they share anything within their scope?静态方法:他们会在他们的范围内共享任何东西吗?
【发布时间】:2011-11-23 11:14:50
【问题描述】:

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

【问题讨论】:

    标签: c# .net static


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-21
        • 1970-01-01
        • 2013-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多