如何将台式计算机的处理时间转换为android设备?

问题描述 投票:1回答:1

我有一个相当复杂的算法,希望在Android应用程序中使用。在我对系统进行过多设计之前,我想了解一下运行这种算法可能需要在Android手机上进行的处理和存储需求。我使用了SO推荐的代码来获取在系统上运行所需的时间:

    long startTime = System.nanoTime();
    //my code
    long endTime = System.nanoTime();
    System.out.println("Took "+(endTime - startTime) + " ns");

该台式机的平均水平在55825493和60942613之间,台式机具有8GB的RAM和四核,运行频率为2.3GHz。我知道许多手机具有不同的处理能力,但实际上我只是想知道如何在与台式机相关的android设备上运行。

任何想法或方法,甚至Android测试工具,都将不胜感激。

TIA

java android cpu-usage
1个回答
0
投票

尝试一下,这与您在PC上进行操作的方式非常相似。

  • 保留UI work on UI threadNon-UI work on Non-UI线程是一个好习惯,但是随着HoneyComb版本Android的到来,它成为了法律。

  • 如果您正在做的工作是非UI的工作,请使用Thread with Handler(仅当您想在线程上在屏幕上显示输出结果时,才使用Handler。) AsyncTask(在Android中引入),也称为无痛线程。

例如:

 long startTime;    // Let this be at Class scope

 long endTime;      // Let this be at Class scope

 long finalResult;  // Let this be at Class scope

Thread t = new Thread(new Runnable(){

 startTime = System.nanoTime();

  public void run(){


   // Your Work.....

    }

 endTime = System.nanoTime();

 finalResult = startTime - endTime;

});


t.start();


System.out.println("The total processing time: "+finalResult);

// Your Output will be at the LogCat... Use Handler if you want to print it as toast etc on Screen.
© www.soinside.com 2019 - 2024. All rights reserved.