zoukankan      html  css  js  c++  java
  • 多线程(二)ThreadLocal

     ThreadLocal

    public class Demo extends Thread{
    
        static int i = 0;
        
        public Integer getNext(){
            
            i++;
            return i;
        }
        
        
        @Override
        public void run() {
            for (int i = 0; i < 3; i++) {
                System.out.println(currentThread().getName() + "---" + getNext());
            }
        }
        
        
        public static void main(String[] args) {
            Demo demo = new Demo();
            Thread thread = new Thread(demo);
            thread.setName("线程1");
            Thread thread1 = new Thread(demo);
            thread1.setName("线程2");
            Thread thread2 = new Thread(demo);
            thread2.setName("线程3");
            thread.start();
            thread1.start();
            thread2.start();
        }
    
    }

    ThreadLocal将代码修改一下~

    package test;
    
    public class Demo extends Thread{
    
        static Integer i;
        
        
        ThreadLocal<Integer> threadLocal = new ThreadLocal<Integer>();
        
        public Integer getNext(){
            //从ThreadLocal中获取
            i = threadLocal.get();
            if (i == null) {
                i = 0;
            }
            i++;
            //存入ThreadLocal中
            threadLocal.set(i);
            return i;
        }
        
        
        @Override
        public void run() {
            for (int i = 0; i < 3; i++) {
                System.out.println(currentThread().getName() + "---" + getNext());
            }
        }
        
        
        public static void main(String[] args) {
            Demo demo = new Demo();
            Thread thread = new Thread(demo);
            thread.setName("线程1");
            Thread thread1 = new Thread(demo);
            thread1.setName("线程2");
            Thread thread2 = new Thread(demo);
            thread2.setName("线程3");
            thread.start();
            thread1.start();
            thread2.start();
        }
    
    }

      

  • 相关阅读:
    xgboost
    GBDT 梯度提升决策树简述
    minimal pairs
    Describe your hometown
    英语短句
    英汉翻译
    英语音译词
    power的读音
    英语口语(英语词根与单词的说文解字(李平武 2008版)读书笔记)
    Jar包转成Dll的方式(带嵌套的jar也能做)
  • 原文地址:https://www.cnblogs.com/deepSleeping/p/10259139.html
Copyright © 2011-2022 走看看