在android sep中循环1000 x 1000

时间:2011-05-25 11:07:37

标签: android

我在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();
}

提前致谢...

3 个答案:

答案 0 :(得分:3)

是的,似乎进程监视器杀死了你的应用程序,因为它没有响应。保持UI线程长时间运行。

答案 1 :(得分:2)

不要在UI线程上执行此操作...使用ThreadsAsyncTasks进行长时间运行

编辑:

用于调试使用logcat ... 只需添加

Log.d("Some My Tag", "Debuging value of smth is:" + value);

然后从Eclipse中的Logcat窗口读取值

答案 2 :(得分:1)

如果在UI线程上执行长时间运行操作,则会出现ANR (Application not responding)错误。你应该在后台线程中完成繁重的工作。