android 什么时候用thread 什么时候用service,怎么判断一个程序完全退出,不是一个activity

 我来答
完虐求交往
推荐于2016-06-13
知道答主
回答量:2
采纳率:0%
帮助的人:2.2万
展开全部
首先,Google有android开发文档,里面对各个控件有详细的说明。我估计你也没有仔细看。不过,你还是应该看看,有可能我接下来说的你还是不太理解。
thread是线程的意思,不论是android,还是别的平台,都会有这个概念,这是很基础的东西。当你想要做一个耗时的操作,为了不堵塞UI线程,你可能需要开启一个线程来进行这个操作。比如进行网络IO。
service是android独有的一个概念,意思是一个后台运行的服务。当然了,你也可以用它来做个耗时的操作,比如下载一个文件,这也可以用线程来做,不同的是线程更轻量级,消耗的资源也少,用service来做,消耗的资源多,显得有点大题小做。所以,大多数情况下,service是当做一个服务来用,最典型的例子就是后台播放音乐,当你退出一个activity,音乐还是在播放,那是因为service还在后台运行着。
至于最后一个问题,我感觉那是无解的:程序都完全退出了,程序里的任何代码都不会被执行到,你说的判断是没有任何意义的。
更多追问追答
追问
但是用thread时,如果没有手动结束线程,就算成句完全退出,线程还是会一直执行,就会变成幽灵线程
追答
那就是你的设计问题。java的线程有两种,用户线程和守护线程。当所有的用户线程结束时,守护线程会强行被结束。你可以把那个线程设置为守护线程。具体方法你自己上网查,我也好久没写java了。或者你也可以把你的具体需求说来,我来帮你看看。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式