如何正确使用timer.cancel?这篇教程让你秒懂!

吉云

咱来聊聊这个*咋用。

我是想搞个定时任务,每隔一段时间自动执行某个操作。就想到Python里的Timer。简单来说,Timer就是一个线程,设定好时间间隔和要执行的函数,时间一到它就自动执行。

第一步,咱得先创建一个Timer对象。这玩意儿就像是一个闹钟,设定好时间,到时候它就响。然后再创建一个TimerTask对象,这个对象就是用来存放具体要执行的任务的,就像是闹钟响之后要做的事情。

如何正确使用timer.cancel?这篇教程让你秒懂!

然后,咱用Timer的schedule方法来设置这个定时任务,告诉它多久执行一次,执行哪个TimerTask。

  • 创建Timer对象
  • 创建TimerTask对象
  • 用schedule方法设置定时任务

如何正确使用timer.cancel?这篇教程让你秒懂!

但是,有时候咱设定好任务,又不想让它执行,或者想提前结束它,这时候咋办?这就轮到*出场。

我查一下,发现这个cancel方法,不管是TimerTask类还是Timer类都有。它们的作用都是把任务队列里的任务给清理掉。就像是把闹钟给关,它就不会再响,任务也就不会再执行。

然后,我试一下,发现调用cancel之后,确实可以取消定时任务。但是,它不是那种立马停下来的方式。打个比方,就是你把闹钟关,但是它可能在下一次响铃之前,还是会响一下。大概就是这个意思。

3,还学到一个小知识,就是除cancel,还可以用*来释放这个定时器资源,免得它占着茅坑不拉屎。一般写代码的逻辑是,在用完一个东西之后,就要及时释放掉它占用的资源,像内存、线程、定时器之类的。

所以,想要取消定时任务,就用*,如果彻底不用这个定时器,就再用*把它释放掉。记住要成套使用,就像刷完牙要漱口,屁股攃完要冲水一样。

今天就试这么个事儿,记录下,分享给大伙儿,希望对你们也有点帮助。

如何正确使用timer.cancel?这篇教程让你秒懂!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]