Java Timer消耗CPU

时间:2016-09-24 21:47:13

标签: java timer cpu-usage

//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();
}

此代码消耗了80%的CPU,我真的需要在表单上显示时间和日期。

1 个答案:

答案 0 :(得分:1)

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