我开发了一个自动呼叫应用程序。该应用程序读取一个包含电话号码列表的文本文件并呼叫几秒钟,结束呼叫,然后重复。
我的问题是该应用程序在 10~16 小时后不发送呼叫。我不知道确切的原因,但我想问题是 CPU 使用率。我的应用程序的 CPU 使用率几乎是 50%!如何减少 CPU 使用率?
以下是部分源代码:
if(r_count.compareTo("0")!=0) {
while(index < repeat_count) {
count = 1;
time_count = 2;
while(count < map.length) {
performDial(); //start call
reject(); //end call
finishActivity(1);
TimeDelay("60"); // wait for 60sec
count = count + 2;
time_count = time_count + 2;
onBackPressed(); // press back button for calling next number
showCallLog();
finishActivity(0);
}
index++;
}
这是TimeDelay()
方法来源:
public void TimeDelay(String delayTime) {
saveTime = System.currentTimeMillis()/1000;
currentTime = 0;
dTime = Integer.parseInt(delayTime);
while(currentTime - saveTime < dTime) {
currentTime = System.currentTimeMillis()/1000;
}
}
TimeDelay()
在while循环中重复几次。