静态方法传入的参数在多线程下的状态

静态方法传入的参数在多线程下的状态

静态方法的传入的参数在多线程环境会会不会互相干扰呢,比如:

    public static void test(String test){
        System.out.println(test)
    }

如果同时有多个线程使用这个静态方法,这里的字符串test在多线程环境下还会是当时传入的那个参数吗?

猜测是不会影响的。。这个是引用传递

代码里来试试:

/*
*这里静态方法里有一个String类型的参数,两个线程同时进行,传入不同的*String对象,然后让一个线程等待1s,打印结果
*/
public class StaticMethodTest implements Runnable{
    static int i = 0;
    
    @Override
    public void run() {
        // TODO Auto-generated method stub
        //随机生成字符串
        testStaticMethod(Math.random()+ "");
    }
    
    public static void testStaticMethod(String s){
            System.out.println(Thread.currentThread().getName() + ":hello");
        if(i == 0){
            i = 1;
            try {
                //如果是第一个线程进来,让它休息1s
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        }
        //打印出这时候引用的s是否不受影响
        System.out.println(Thread.currentThread().getName() + s);
    }


    
        public static void main(String[] args) {
        // TODO Auto-generated method stub
        StaticMethodTest t0 = new StaticMethodTest();
        StaticMethodTest t1 = new StaticMethodTest();
        new Thread(t0,"t0").start();
        new Thread(t1,"t1").start();
    }

}

运行结果:

t1:hello
t0:hello
t00.3163063185891368
t10.861889330531942

结果分析:
这场t1线程先进入,然后等待1s
t0进入后不用等待马上打印出字符串
t1等待后打印出字符串,和t0的字符串不是同一个。

这说明不受影响

结论:
静态方法传入的参数是在多线程中是不会相互影响的,因为是引用传递,引用或者修改的只是当时传入的那个参数所指向的内存空间

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,779评论 18 399
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 1,526评论 0 3
  • 转自:http://blog.csdn.net/jackfrued/article/details/4492194...
    王帅199207阅读 8,619评论 3 93
  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 3,376评论 0 6
  • 惠风和畅春光里,鸟比翼,蝶香觅。柳叶翩翩何所拟?剪刀谁握,繁华谁给,四月天增绮。 韶阳满树斑驳溢,芳草萋萋缀花地。...
    静铃音阅读 586评论 31 31