您的位置:首页 > 其它

static 静态方法 线程安全

2014-09-12 13:18 197 查看
static 静态方法 线程安全
/article/8535742.html

public class Test

{

public static String hello(String str)

{

String tmp = "";

tmp = tmp + str;

return tmp;

}

}

hello方法会不会有多线程安全问题呢?没有!

静态方法如果没有使用静态变量,则没有线程安全问题。

为什么呢?因为静态方法内声明的变量,每个线程调用时,都会新创建一份,而不会共用一个存储单元。比如这里的tmp,每个线程都会创建自己的一份,因此不会有线程安全问题。

注意:静态变量,由于是在类加载时占用一个存储区,每个线程都是共用这个存储区的,所以如果在静态方法里使用了静态变量,这就会有线程安全问题!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: