ThreadLocal的简单入门使用

1.概述

JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序,ThreadLocal并不是一个Thread,而是Thread的局部变量。

2多说无益,上代码

简单实现在不同线程获取不同值的小Demo

public static final ThreadLocal<String> mThreadLocal = new ThreadLocal<String>() ;

    public static void main(String[] args) {

        //主线程设置为false
        mThreadLocal.set("小明") ;

        new Thread("therad--1"){
            public void run() {
                mThreadLocal.set("小红") ;
                System.out.println("thread--1:" + mThreadLocal.get());
            };
        }.start() ;

        new Thread("therad--2"){
            public void run() {
                mThreadLocal.set("小花") ;
                System.out.println("thread--2:" + mThreadLocal.get());
            };
        }.start() ;

        System.out.println("主线程:" + mThreadLocal.get());
    }

首先创建一个ThreadLocal对象,并且通过泛型指定要在线程中存入的值。然后就是在不同的线程中set和get,通过结果可以看到,不同的线程获取的值使对应该线程设置的值

3.运行结果

ThreadLocal的简单入门使用_第1张图片

由于代码比较简单就不上传代码了

你可能感兴趣的:(本地线程入门)