2016-09-24 107 views
-1
//I call the methods under the init 
{ 
    showdate(); 
    showtime(); 
} 

void showdate() 
{ 
    Date d = new Date(); 
    SimpleDateFormat a = new SimpleDateFormat("YYYY-MM-dd"); 
    date.setText(a.format(d)); 
} 

void showtime() 
{ 
    new Timer(0, new ActionListener() 
    { 
    @Override 
    public void actionPerformed(ActionEvent e) 
    { 
     Date d = new Date(); 
     SimpleDateFormat a = new SimpleDateFormat("hh:mm:ss"); 
     time.setText(a.format(d)); 
    } 
    }).start(); 
} 

此代码占用了我CPU的80%,我真的需要在我的窗体上显示时间和日期。Java定时器消耗CPU

+0

也许你应该让计时器在调用你的方法之间等待一段时间? – bmargulies

+0

谢谢,我会尝试一下,让它知道它是否有效。 –

+0

延迟时间为0是不现实的,并且除了刻录CPU周期外没有其他用途。尝试一个更实际的值,例如13或15,如果程序功能正常,则更长。 –

回答

1

延迟时间为0是不现实的,并且除了刻录CPU周期外没有其他用途。尝试一个更实际的值,如13或15,如果程序功能正常,则更长。