zoukankan      html  css  js  c++  java
  • java多线程快速入门(十六)

    ThreadLocal关键字实现每个线程有自己的变量

    package com.cppdy;
    
    class Number {
    
        private int num;
    
        public static ThreadLocal<Integer> threadLocal = new ThreadLocal<Integer>() {
            @Override
            protected Integer initialValue() {
    
                return 0;
            }
        };
    
        public Number(int num) {
            this.num = num;
        }
    
        public int getNum() {
            int temp = threadLocal.get();
            threadLocal.set(temp+1);
            int count=threadLocal.get();
            return count;
        }
    }
    
    public class ThreadDemo12 extends Thread {
    
        private Number n;
    
        public ThreadDemo12(Number n) {
            this.n = n;
        }
    
        @Override
        public void run() {
            System.out.println(getName() + "--" + n.getNum());
        }
    
        public static void main(String[] args) throws Exception {
            Number n1 = new Number(0);
            ThreadDemo12 mt1 = new ThreadDemo12(n1);
            ThreadDemo12 mt2 = new ThreadDemo12(n1);
            ThreadDemo12 mt3 = new ThreadDemo12(n1);
            mt1.start();
            mt2.start();
            mt3.start();
        }
    
    }
  • 相关阅读:
    progresql
    postgresql
    postgresql
    postgresql 索引
    postgresql 视图
    postgresql 触发器
    postgresql异常快速定位
    postgresql数据库备份和恢复
    amgular $q用法
    安装fcitx
  • 原文地址:https://www.cnblogs.com/jiefu/p/10016162.html
Copyright © 2011-2022 走看看