我有一个静态方法
public static void abc(String str) {
// some code
str = str + "s";
// some code
}
让我们假设这个方法被100个线程同时调用。
我认为CPU会调度所有这些线程来执行这个静态方法。
允许扩展执行请求。现在,大约有100000个线程在同一时间调用这个静态方法。
如果是这样,这将是性能开销(与此方法是类的成员的情况相比)。我是对的吗?
答案 0 :(得分:5)
答案 1 :(得分:4)
从操作系统的调度程序的角度来看,该方法是否是静态无关紧要。在机器级别,两者都只是具有一些参数的子程序。因此,除非两种方法都不同步,否则不应有任何区别。