【发布时间】:2011-07-07 14:25:43
【问题描述】:
我想知道你是否有一个不同步的静态方法,但不修改任何静态变量是线程安全的吗?如果该方法在其中创建局部变量怎么办?例如,下面的代码是线程安全的吗?
public static String[] makeStringArray( String a, String b ){
return new String[]{ a, b };
}
因此,如果我有两个线程连续并同时调用该方法,一个与狗(例如“大丹犬”和“斗牛犬”)和另一个与猫(例如“波斯”和“暹罗”)将猫和狗在同一个数组中?或者猫和狗永远不会同时在同一个方法的调用中?
【问题讨论】:
-
关于这个问题的另一个帖子:stackoverflow.com/questions/8015797/…
-
这是一个不同的问题,这是静态方法调用是否是线程安全的,而不是数组是否是。
标签: java multithreading concurrency static thread-safety