zoukankan      html  css  js  c++  java
  • Java 学习笔记之 方法内的临时变量是线程安全

    方法内的临时变量是线程安全:

    方法内部的私有变量,是线程安全的。

    public class HasSelfPrivateNum {
        public void addI(String username) {
            try {
                int num = 0;
                if (username.equals("a")){
                    num = 100;
                    System.out.println("a set over!");
                    Thread.sleep(2000);
                } else {
                    num = 200;
                    System.out.println("b set over!");
                }
                System.out.println(username + " num = " + num);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
    
    public class HasSelfPrivateNumThreadA extends Thread{
        private HasSelfPrivateNum numRef;
    
        public HasSelfPrivateNumThreadA(HasSelfPrivateNum numRef) {
            super();
            this.numRef = numRef;
        }
    
        @Override
        public void run() {
            super.run();
            numRef.addI("a");
        }
    }
    
    public class HasSelfPrivateNumThreadB extends Thread {
        private HasSelfPrivateNum numRef;
    
        public HasSelfPrivateNumThreadB(HasSelfPrivateNum numRef) {
            super();
            this.numRef = numRef;
        }
    
        @Override
        public void run() {
            super.run();
            numRef.addI("b");
        }
    }
    
    public class ThreadRunMain {
        public static void main(String[] args) {
            testHasSelfPrivateNumThread();
        }
        public static void testHasSelfPrivateNumThread(){
            HasSelfPrivateNum numRef = new HasSelfPrivateNum();
            HasSelfPrivateNumThreadA athread = new HasSelfPrivateNumThreadA(numRef);
            athread.start();
            HasSelfPrivateNumThreadB bthread = new HasSelfPrivateNumThreadB(numRef);
            bthread.start();
        }
    }

    运行结果:

  • 相关阅读:
    JavaScript 的 Promise
    MacOS copy图标shell脚本
    ExtJS 修改load paging时的参数
    JSONP
    8种跨域解决方案
    Ext Store Proxy Ajax
    ExtJS 自定义组件
    MacOS Apache配置
    xshell 上传 下载文件
    shell 内网主机存活探测器
  • 原文地址:https://www.cnblogs.com/AK47Sonic/p/7705444.html
Copyright © 2011-2022 走看看