zoukankan      html  css  js  c++  java
  • java基础---->多线程之ThreadLocal(七)

      这里学习一下java多线程中的关于ThreadLocal的用法。人时已尽,人世还长,我在中间,应该休息。

    ThreadLocal的简单实例

     一、ThreadLocal的简单使用

    package com.linux.huhx.thread2;
    
    import java.util.Random;
    
    public class ThreadLocalerTest {
        private static ThreadLocal<Integer> threadLocal = new ThreadLocal<>();
    
        public static void main(String[] args) {
           for (int i = 0; i < 2;i++) {
               new Thread(new Runnable() {
                   @Override
                   public void run() {
                       int randomValue = new Random().nextInt(9999);
                       System.out.println(Thread.currentThread().getName() + ", value: " + randomValue);
                       threadLocal.set(randomValue);
    
                       new GetA().get();
                       new GetB().get();
                   }
               }).start();
           }
        }
    
        private static class GetA {
            public void get() {
                int value = threadLocal.get();
                System.out.println("A from " + Thread.currentThread().getName() + ", get data " + value);
            }
        }
    
        private static class GetB {
            public void get() {
                int value = threadLocal.get();
                System.out.println("A from " + Thread.currentThread().getName() + ", get data " + value);
            }
        }
    }

    运行的结果如下:

    Thread-1, value: 2667
    Thread-0, value: 9611
    A from Thread-0, get data 9611
    A from Thread-1, get data 2667
    A from Thread-0, get data 9611
    A from Thread-1, get data 2667

    友情链接

  • 相关阅读:
    php -- php数组相关函数
    php -- 数组排序
    php -- in_array函数
    php -- 魔术方法 之 删除属性:__unset()
    无符号整型与有符号整型相运算规则
    N个节点的二叉树有多少种形态
    getopt_long
    typedef
    约瑟夫环问题算法(M)
    C语言基础
  • 原文地址:https://www.cnblogs.com/huhx/p/baseusejavathreadThreadLocal.html
Copyright © 2011-2022 走看看