基于springBoot实现定时器

基于springBoot实现定时器,第1张

1.在项目的启动类的同级目录或者更低级目录创建定时器类(反正该类的目录层级不能比启动类高)

①:@Component:要声明为bean,没有声明的话,启动类启动无法实现定时效果。

②:@EnableScheduling:在配置类上使用,开启计划任务的支持(类上)。

③:@Configuration:由于@EnableScheduling是声明在配置类上的,所以定时器类添加了该注解。

3.编写定时任务(也就是一个方法罢了,只不过在该方法是在@EnableScheduling声明类下,并多了一个@Scheduled(cron = "0/10 * * * * ?")注解)

4.在定时任务中实现自己的逻辑编写

测试效果如下:

每天进步一点点吧~

Qt中定时器用于间隔一段时间执行一次 *** 作,循环执行,直至定时器停止或被杀死。有两种使用方法, QObject类 与 QTimer类 。个人比较习惯使用QTimer类,信号与槽方式比较简洁灵活。

方法一:QObject中的定时器的使用,需要用到三个函数

1、int QObject::startTimer ( int interval ) //开启定时器,执行周期为interval毫秒。

此函数开启成功后,返回这个定时器的ID,并每隔interval毫秒时间进入一次timeEvent函数,直至定时器停止或被杀死。

2、void QObject::timeEvent ( QTimerEvent *event ) //需重写timeEvent函数,相关 *** 作在此函数中执行。

当定时器超时后会进入此函数,可以通过event->timerId()来确定当前执行的定时器是哪个。

3、void QObject::killTimer ( int id )    //杀死目的id号的定时器,停止循环。

示例:

方法二:使用QTimer类(信号与槽)

1、创建QTimer类对象,

 QTimer *m_timer= new QTimer ( this )

2、连接信号与槽,定时器超时后会发出 timeout () 信号,超时时执行槽函数 mySlot()

connect ( timer , SIGNAL ( timeout()) , this ,SLOT( mySlot()) )

3、开启定时器,周期为msec毫秒

timer->start( msec )


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11787970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存