Code Listing 1:
PackageCn.itcast.heima2;ImportJava.util.Calendar;ImportJava.util.Timer;ImportJava.util.TimerTask; Public classTraditionaltimertest { Public Static voidMain (string[] args) {NewTimer (). Schedule (NewTimerTask () {@Override Public voidrun () {System.out.println ("Outer:boom!"); } },10000,3000); while(true) {System.out.println (Calendar.getinstance (). Get (Calendar.second)); Try{Thread.Sleep (1000); } Catch(interruptedexception e) {//TODO auto-generated Catch blockE.printstacktrace (); } } }}
Code Listing 2:
PackageCn.itcast.heima2;ImportJava.util.Calendar;ImportJava.util.Timer;ImportJava.util.TimerTask; Public classTraditionaltimertest {Static classMytimertaskextendstimertask{Static intCount=0; @Override Public voidrun () {//TODO auto-generated Method Stubcount= (count+1)%2; System.out.println ("Outer:boom!"); NewTimer (). Schedule (NewMytimertask (), 2000+2000*count); } } Public Static voidMain (string[] args) {NewTimer (). Schedule (NewMytimertask (), 2000); while(true) {System.out.println (Calendar.getinstance (). Get (Calendar.second)); Try{Thread.Sleep (1000); } Catch(interruptedexception e) {//TODO auto-generated Catch blockE.printstacktrace (); } } }}
(Dark Horse Java multi-threading and Concurrency Library advanced application) 02 Traditional timer Technology Review