求助一个静态方法的问题
如果一个类的静态方法被多个用户同时调用, 那么每个用户会得到所期望的返回值么?例如 class MyClass
{
public static int cal(int i)
{
return i;
}
}
那么user1 调用MyClass.search(1) 返回 1
user2 调用MyClass.search(3) 返回多少?
期望得到3, 但是会不会受到前一个值的影响 --------------------编程问答-------------------- 在并发量高的时候得不到想要的值 --------------------编程问答-------------------- 我觉得应该不会出现什么乱子吧 应该是3 并易做图况不是很懂 坐等高人解析! --------------------编程问答-------------------- .NET里应该叫做方法(Method) 不再称为函数了
方法和静态方法的区别 主要是是否需要实例化
静态方法在程序运行时 就已经实例化好了 不管多少用户并发 都一样处理
你得先明白一点 就是静态方法和静态变量的区别
静态变量的话 并发就不行了 得加锁排队
可静态方法只是一段代码 理论上并不占用运行内存 并不存在并发的问题
======
不管方法是否静态 只要方法中的变量有静态的 就得排队 要不两个线程同时连 变量就不对了
而静态方法只是一段代码 只不过你使用时不用先new过 底层来说还是一样是个方法 所以没有锁的问题
--------------------编程问答--------------------
+1 看来我理解的没什么问题!
补充:.NET技术 , ASP.NET