随着具有多核的安卓手机的出现,应用程序开发人员如何确保他们的应用程序利用这些核的额外处理能力。据我了解,应用程序开发人员唯一能做的就是让他们的应用程序多线程,并让 android 内核负责将任务委托给不同的内核。
我想知道是否还有其他可以优化多核的方法。此外,android 中最好的多线程实践是什么。
随着具有多核的安卓手机的出现,应用程序开发人员如何确保他们的应用程序利用这些核的额外处理能力。据我了解,应用程序开发人员唯一能做的就是让他们的应用程序多线程,并让 android 内核负责将任务委托给不同的内核。
我想知道是否还有其他可以优化多核的方法。此外,android 中最好的多线程实践是什么。
与其尝试自己执行线程化,不如最好使用内置的范例,例如 AsyncTask。
如果你想
//Sets up a thread pool where NUM_THREADS is the amount that can run at the same time
ExecutorService threadPool = null;
threadPool = Executors.newFixedThreadPool(NUM_THREADS);
//Will execute something on one of the threads queuing if necessary
threadPool.execute(new Runnable() {
@Override
public void run() {
}});
通常网络调用和数据解析应该在单独的线程上完成