简单例子演示 ThreadLocal 类的使用方法
2018-07-20 来源:open-open
/** Demonstrate use of ThreadLocal */ public class ThreadLocalDemo extends Thread { /** A serial number for clients */ private static int clientNum = 0; /** This ThreadLocal holds the Client reference for each Thread */ private ThreadLocal myClient = new ThreadLocal() { // The initialValue() method is called magically when you call get(). protected synchronized Object initialValue() { return new Client(clientNum++); } }; public void run() { System.out.println("Thread " + Thread.currentThread().getName() + " has client " + myClient.get()); } public static void main(String[] args) { Thread t1 = new ThreadLocalDemo(); Thread t2 = new ThreadLocalDemo(); t1.start(); t2.start(); } /** Simple data class, in real life clients would have more fields! */ private class Client { private int clNum; Client(int n) { clNum = n; } public String toString() { return "Client[" + clNum + "]"; } } }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
最新资讯
热门推荐