Android线程优先级

时间:2012-07-30 01:51:25

标签: android multithreading memory-management

如何在Android中管理线程优先级? (或Android中的线程策略是什么?)GUI线程将被赋予更高的优先级,对吧?

我见过创建单独线程来清理(本机)资源的应用程序,因为不鼓励使用finalize()。但是,由于清理线程没有足够频繁地运行,因此仍然存在内存泄漏(或内存效率低下)。

其他一些应用程序,那些忽略不使用finalize()的建议的应用程序,依赖于终结器来清理资源。所以我想知道终结者线程是如何安排的?它是一种可靠的方式来释放资源,无论是托管资源还是本地资源?

1 个答案:

答案 0 :(得分:0)

我强烈建议您使用AsyncTask在不同的线程中执行某些操作。 AsyncTask非常易于使用,我想说它是java的最大优势之一。我真的很想念它。

异步任务获取方法

    onPostExecute(){}

你可以在线程完成它之后清理你想要的任何东西。

http://labs.makemachine.net/2010/05/android-asynctask-example/

http://marakana.com/s/video_tutorial_android_application_development_asynctask_preferences_and_options_menu,257/index.html

关于AsyncTask的链接。

关于优先级:android中的线程是java中的线程,它们的优先级从0到10。 您可以根据需要为每个线程设置它们。

关于

finalize();

你应该避免使用这种方法。正如我已经说过的,你应该更好地使用AsyncTask类而不是Thread。