我在Android 2.3.3(Nexus One)上运行了这样的代码
for(i=0; i<1000; i++){
for(j=0;j<1000;j++){
do AND calculation
do XOR calculation
}
}
这对于Android有太多的计算吗? 我经历了调试器,调试器在第一个for循环(总共3000次迭代)的3次迭代后失去了控制权
我在这样的新线程上运行它并在主ui线程上调用此函数..
public void startCalculation(ArrayList<data> featA, ArrayList<data> featB){
newThread= new Thread(new Runnable(){
public void run(){
theFunction();
}
});
newThread.start();
}
提前致谢...
答案 0 :(得分:3)
是的,似乎进程监视器杀死了你的应用程序,因为它没有响应。保持UI线程长时间运行。
答案 1 :(得分:2)
不要在UI线程上执行此操作...使用Threads或AsyncTasks进行长时间运行
编辑:
用于调试使用logcat ... 只需添加
Log.d("Some My Tag", "Debuging value of smth is:" + value);
然后从Eclipse中的Logcat窗口读取值
答案 2 :(得分:1)
如果在UI线程上执行长时间运行操作,则会出现ANR (Application not responding)错误。你应该在后台线程中完成繁重的工作。