<分区>
我想知道在考虑性能的情况下,在 Android 编程中创建无限循环的最佳方法是什么? (类似于 for(;;)、AsyncTask 或 while(true)...)。干杯。
<分区>
我想知道在考虑性能的情况下,在 Android 编程中创建无限循环的最佳方法是什么? (类似于 for(;;)、AsyncTask 或 while(true)...)。干杯。
最佳答案
如果您使用无限期的 while
或 for
循环,它会大大降低应用程序的性能,卡住 UI,一段时间后您将看到 应用程序没有响应
如果您在 UI 线程本身中执行任务,则会出错。
相反,如果您想在某个时间间隔内连续执行某些任务,请考虑使用 Timer
。
TimerTask timer= new TimerTask(){
@Override
public void run() {
//Do your task here
runOnUiThread(new Runnable() {
@Override
public void run() {
//Task which involves manipulating UI
}
});
}
然后您可以以固定速率调用Timer
。
t.scheduleAtFixedRate(timer , 0 , 5000);
所以上面的代码每 5 秒(5000 毫秒)
调用一次 TimerTask
。由于它在单独的线程上运行,因此不会出现性能问题。
有关更多信息,您可以引用官方文档,http://developer.android.com/reference/java/util/Timer.html
关于android - 创建无限循环android的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20821454/