Android——Timer停不下来的解决方法

来源:互联网 发布:搜狗高速浏览器mac版 编辑:程序博客网 时间:2024/04/30 11:32

最近在写定时更新播放器进度条的时候,发现播放结束时停止Timer和TimerTask之后,Timer还在运行,网上找了下原因,TimerTask的cancel方法一次只取消一个Task,这就会造成内存泄露,怎么解决这个问题呢?Timber还给我们提供了另外一个少有人知的方法purge()。

这个方法是这么解释的:Removes all cancelled tasks from this timer’s task queue.意思就是purge方法会检查timer队列里标记为canceled的task,将对它的引用置为null,来释放内存引用。

果然在Timer的cancel方法之后调用purge方法就能解决Timer停不掉的问题了。赶紧拿起烂笔头记录一下。/(ㄒoㄒ)/~~

原创粉丝点击