安卓开发时主线程退出了可是子线程无法结束

写了一个安卓程序,在点击开始按钮后创建了一个TimerTask,在设定的时间后开始循环播放音乐并震动,但是在虚拟机上测试时程序都退出了可是还会一直播放音乐,这都没啥,关键... 写了一个安卓程序,在点击开始按钮后创建了一个TimerTask,在设定的时间后开始循环播放音乐并震动,但是在虚拟机上测试时程序都退出了可是还会一直播放音乐,这都没啥,关键是我再次进入程序的时候没法结束这个播放音乐的线程。再次运行又会创建一个线程,就造成很多个线程在乱叫,大神帮帮忙 展开
 我来答
有车2015
2015-05-20 · TA获得超过893个赞
知道小有建树答主
回答量:684
采纳率:0%
帮助的人:353万
展开全部
TimerTask中定义一个变量isFinish代表主线程是否结束,默认false,在循环处判断,等于true就不再执行子线程了。当主线程调用销毁方法的时候,设置isFinish为true。
追问
要在不同的方法中访问这个变量看来是要设置成这个类的成员变量咯?还有我在new Timer的时候调用的是创建守护线程的构造方法,但是还是会一直运行。难道在destroy后主线程还在?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式