当我运行以下代码时,秒数不会增加。但是,如果我只是执行startTimer.run(),那么秒增量。
StartTimer startTimer = new StartTimer();
int numProcessors = Runtime.getRuntime().availableProcessors();
executorService = Executors.newFixedThreadPool(numProcessors);
executorService.submit(startTimer);
...
...
private class StartTimer implements Runnable {
// Runnable StartTimer = new Runnable() {
@Override
public void run() {
while (running) {
Calendar calendar = Calendar.getInstance();
SimpleDateFormat simpleDateFormat =
new SimpleDateFormat("dd:MMMM:yyyy HH:mm:ss a");
final String strDate = simpleDateFormat.format(calendar.getTime());
helloWorldTextView.setText(strDate);
helloWorldTextView.postDelayed(this, 500);
}
};
}
感谢您的帮助。
答案 0 :(得分:1)
此行为是预期的。首先初始化Runnable,然后通过调用run()方法运行它。