Newcachedthreadpool Cache Default 60s
Guess your results.
PackageCom.juc.threadpool;ImportJava.util.concurrent.ExecutorService;Importjava.util.concurrent.Executors;/*** Created by Administrator on 2018/6/27.*/ Public classCachedthreadpooldemo { Public Static voidMain (string[] args)throwsinterruptedexception {executorservice executorservice=Executors.newcachedthreadpool (); for(inti = 0; I < 10; i++) { Final ints =i; Executorservice.execute (()- { Try{System.out.println ("+ S +";;; "+Thread.CurrentThread (). GetName ()); } Catch(Exception e) {e.printstacktrace (); } }); } thread.sleep (2000);//2s Executorservice.execute (()- { Try{System.out.println (";;;" +Thread.CurrentThread (). GetName ()); } Catch(Exception e) {e.printstacktrace (); } }); }}
Thread is reused once
PackageCom.juc.threadpool;ImportJava.util.concurrent.ExecutorService;Importjava.util.concurrent.Executors;/*** Created by Administrator on 2018/6/27.*/ Public classCachedthreadpooldemo { Public Static voidMain (string[] args)throwsinterruptedexception {executorservice Cachedthreadpool=Executors.newcachedthreadpool (); for(inti = 0; I < 10; i++) { Final intindex =i; Try{System.out.println ("Sleep up ..."); Thread.Sleep (Index* 1000); } Catch(Exception e) {e.printstacktrace (); } cachedthreadpool.execute (NewRunnable () {@Override Public voidrun () {System.out.println (index+ "Current Thread" +Thread.CurrentThread (). GetName ()); } }); } }}
Threads are reused
Suitable for the scene: the flow of traffic peaks wave by wave,
Newcachedthreadpool Use Cases