你的程序为什么不直接让他sleep(6000)呢?
SLEEP的这段时间是不占CPU的.
每隔一小时启动一个线程.SLEEP(1000*60*60)当然更不会有什么感觉.
为了准确定时,你可以在创建进程之前和之后各取得系统时间,然后再sleep(1000*60*60-这个时间段).
就可以了

解决方案 »

  1.   

    to: salute() 
    呵呵,我的程序垃圾太多了
    但为什么要:创建进程之前和之后各取得系统时间
    我刚才没说清楚,我说的是定点起线程
    就是8:00,9:00,10:00......
    如果我的程序是8:20起的
    那在8:20-9:00这段时间内系统资源不是很浪费么
      

  2.   

    哦,对了
    求时间差,然后sleep()
      

  3.   

    javax.swing.Timer t =  new javax.swing.Timer(1000*60*60,new ActionListener(){
       public void actionPerformed(ActionEvent evt){
           yourThread.start();
       }
    });
      

  4.   

    javax.swing.Timer t =  new javax.swing.Timer(1000*60*60,new ActionListener(){
       public void actionPerformed(ActionEvent evt){
           yourThread.start();
       }
    });