问题
Sometimes we need to delay a code before it runs.
This is doable by the Handler.postDelayed(Runnable)
or CountdownTimer
.
Which one is better in terms of performance?
See the sample code below
Handler
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//DO SOMETHING
}
}, 1000);
CountDownTimer
new CountDownTimer(1000, 1000) {
public void onFinish() {
//DO SOMETHING
}
public void onTick(long millisUntilFinished) {}
}.start();
回答1:
The Handler
should offer you better performances as CountDownTimer
contains itself a Handler
as you can see here.
回答2:
Use Handler,Android Handler is Good.
See Here, What Others say About Handler
回答3:
I agree that Handler is offering a better performance. But on a side note, you should keep in mind that CountDownTimer object will be destroyed after completed. A Handler will continue to exist after finished. If you only need a temporary timer then CountDownTimer is preferable. Otherwise, use a Handler.
来源:https://stackoverflow.com/questions/35497844/handler-postdelayedrunnable-vs-countdowntimer