Thread-Handling Resource classes:
Package Org.shefron.fc.thread.threadlocal;import Java.util.hashmap;public class Handlethead extends thread {private HashMap map = Null;public Handlethead (HashMap HashMap) {map = HashMap;} @Overridepublic void Run () {super.run (); Registermanager.getregistermanager (). Startregister (map), if (Registermanager.getregistermanager (). GetRegister ()! = null) {System.out.println ("Oh, yes");}} public void print () {if (Registermanager.getregistermanager (). Getregister () = = null) {System.out.println ("no");}}}
Multithreaded Resource Management classes:
Package Org.shefron.fc.thread.threadlocal;import Java.util.hashmap;public class Registermanager {private threadlocal <HashMap> localregister = new threadlocal
Main method Test class:
Package Org.shefron.fc.thread.threadlocal;import Java.util.hashmap;public class Testthreadlocal {/** * @param args */ public static void Main (string[] args) {HashMap map = new HashMap (); Map.put ("hehe", "haha"); Registermanager.getregistermanager (). Startregister (map); Handlethead handle = null;for (int i=1;i<4;i++) {handle = new Handlethead (new HashMap ());//Sub-thread handle.start (); if ( Handle! = NULL) {//This method is located on the main thread Handle.print ();}} System.out.println (Registermanager.getregistermanager (). Getregister ());}}
Java theadlocal multithreaded Resource usage.Java theadlocal multithreaded Resource usage