标签:any imp called adl trace 应用 demo 线程安全 访问
public class ThreadLocalDemo { private static ThreadLocal<SimpleDateFormat> t1 = new ThreadLocal<>(); public static class ParseDate implements Runnable { int i = 0; public ParseDate(int i) { this.i = i; } /** * When an object implementing interface <code>Runnable</code> is used * to create a thread, starting the thread causes the object‘s * <code>run</code> method to be called in that separately executing * thread. * <p> * The general contract of the method <code>run</code> is that it may * take any action whatsoever. * * @see Thread#run() */ @Override public void run() { try { if (t1.get() == null) t1.set(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); Date t = t1.get().parse("2015-03-29 19:29:" + i % 60); System.out.println(i + ":" + t); } catch (ParseException e) { e.printStackTrace(); } } } public static void main(String[] args) { ExecutorService es = Executors.newFixedThreadPool(10); for (int i = 0; i < 1000; i++) { es.execute(new ParseDate(i)); } } }
标签:any imp called adl trace 应用 demo 线程安全 访问
原文地址:http://www.cnblogs.com/ten951/p/6212338.html