0
我试图确保我在我的动态壁纸中使用最高效/正确的代码。目前,如果我有任何周期性操作,我只是使用Runnables重复该操作,然后在完成后postDelay它需要很长时间。动态壁纸中的定期动作
只有一个Runnable比如drawFrame Runnable更好吗,并且对于任何其他的周期性操作都适用?
例如:
int interval1 = 0;
int interval2 = 0;
drawFrame(){
interval1++;
interval2++;
if (interval1==repeatInt1){
interval1 = 0;
// Periodic action 1
}
if (interval2==repeatInt2){
interval2 = 0;
// Periodic action 2
}
// Regular drawFrame code here
}
我会觉得上面的方法将使用更少的资源比跑步3个可运行,是否正确?为了澄清,我有多个需要定期执行的操作(2个或更多),但不一定全部在相同的延迟下执行。最好是创建一个最短延迟的runnable,然后把它作为一个中心线程在X循环后执行其他动作?
我不是真的想弄清楚如何在动作之间切换,这只是我可能有3个动作都在不断重复,但以不同的间隔。我应该创建一个最短间隔(drawFrame)的runnable,然后将它用作另外两个的计时器吗? – Jwc24678 2012-08-01 19:42:35