2
当一个网站同时击中具有非静态变量的相同静态方法时,即使未声明为静态,这些变量是否是静态的?我会这样认为的,但我不得不问。静态新手:静态类/方法中的非静态变量是否意味着静态?
另一种选择是相同的代码,不同的执行有不同的内部变量,所以这段代码不会产生例如有意想不到的字符串长度:
public static class MyClass
{
public static int getResult(string ext)
{
int length = est.length; // One place in RAM or multiple?
Thread.Sleep(5000); // Does this stop program execution for others?
return length;
}
}
问题总结:
- 是没有声明的静态方法变量静态隐含静态,即同时执行静态代码会相互影响吗?
- 或者做这些变量都有各自的存储空间吗?
- 和Thread.Sleep(5000)在一个静态方法中停止所有用户的执行?
TYVM。我使用LinqPad创建了一个例子来证明它。我有三个线程计数,倒计时,不计算,只报告变量内容。像你所描述的那样工作。 – 2011-12-15 23:28:11