首页 > 移动平台 > 详细

【Android API Guides简译(四)】使用Service还是使用线程?

时间:2015-04-07 19:42:25      阅读:127      评论:0      收藏:0      [点我收藏+]

      一个服务是一个组件,这个组件可以在Android后台运行,即使你的这个应用被关闭,它依然在运行。所以说只有你需要一个和当前程序无关的后台程序时,才去创建它。

      而如果你只是想让你的App在主线程外工作,而且操作限定在当前程序中时,只需要在在里面创建另一个线程。

      比如你只是想在你的Activity在运行时,放一首音乐,那么你应该在onCreat()方法里创建另一个线程,在onStart()里开始线程,在onStop()里结束这个线程,同时你也要考虑到使用AsyncTask orHandlerThread,而不是使用传统的线程类Thread。(PS:这里大家可以参考Processes and Threading文档,如果看不懂的话,我可以译给大家看)

      记住,如果你确实创建了一个Service,你也应该在Service里创建另一个线程,否则在默认情况下,Service占用主线程,会导致线程堵塞或者内存过度使用。这是由于除非你另外创建线程,否则一个Service只会在他的托管线程运行,这意味着如果你使用Service进行任何使用CPU的密集操作或者堵塞操作,

你的应用会出现卡顿或者不响应的错误(ANR)。


【Android API Guides简译(四)】使用Service还是使用线程?

原文:http://blog.csdn.net/qq_22939165/article/details/44924163

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!