diff --git a/src/juc/ThreadLocalDemo.java b/src/juc/ThreadLocalDemo.java new file mode 100644 index 0000000..62d0856 --- /dev/null +++ b/src/juc/ThreadLocalDemo.java @@ -0,0 +1,33 @@ +package juc; + +/** + * Test + */ +public class ThreadLocalDemo { + private static ThreadLocal threadLocal = new ThreadLocal<>(); + + public static void main(String[] args) { + new Thread(new Runnable() { + @Override + public void run() { + threadLocal.set("A"); + print(); + System.out.println("after remove localVal:" + threadLocal.get()); + } + }, "A").start(); + new Thread(new Runnable() { + @Override + public void run() { + threadLocal.set("B"); + print(); + System.out.println("after remove localVal:" + threadLocal.get()); + } + }, "B").start(); + } + + protected static void print() { + System.out.println(Thread.currentThread().getName() + "localVal:" + threadLocal.get()); + threadLocal.remove(); + } + +} \ No newline at end of file