timer是多线程中的一种吗?

来源:互联网 发布:成捷迅线路绘图软件 编辑:程序博客网 时间:2024/05/16 07:35
我来帮他解答
满意回答
检举| 2009-03-02 16:48
timer和timeTask一起使用,timeTask已经把runable实现了,timer的schedule方法又把start方法封装了,所以,只要把这两个类一起用好就可以方便的实现多线程。这是我的实例:package corejava.d12.thread;import java.util.*;import java.io.*;//使用runable或者thread肯定可以,但是没有timer和timerTask方便public class MyTask extends TimerTask {    String index;    Timer myTimer = new Timer();    public MyTask(String index) {        this.index = index;    }    public void run() {        System.out.println(index);    }    public static void main(String args[]) {        MyTask myTask1 = new MyTask("First task");        myTask1.doScedule(0,3);        MyTask myTask2 = new MyTask("Second task");        myTask2.doScedule(0,1);        try{            Thread.sleep(6000);        }        catch(InterruptedException e){                   }                 myTask1.end();        myTask2.end();//程序结束时用cancel()结束Timer           }    public void doScedule(int delay, int internal) {//     利用timer.schedule方法,这里肯定把start方法封装了        myTimer.schedule(this, delay * 1000, internal * 1000);     }    public void end(){        myTimer.cancel();    }}/* * 打印结果: * First taskSecond taskSecond taskSecond taskSecond taskFirst taskSecond taskSecond taskSecond taskFirst task 
* */                        

 
 

其他回答 共1条

2009-03-02 10:55dakiler| 六级
我觉得是,它已经对多线程有了一定的封装,而不需要程序员去直接操作Thread
                                                                                                                                                                                                                                                                  




原创粉丝点击