【技术实现步骤摘要】
一种任务调度方法、装置、电子设备及计算机可读介质
[0001]本申请涉及计算机
,尤其涉及一种任务调度方法、装置、电子设备及计算机可读介质。
技术介绍
[0002]现有的定时任务调度,基于系统时间实现,采用复杂的调度算法,容易受系统时间影响,改变系统时间会影响任务的正常执行;并且实现复杂,影响任务调度的时间精度、性能。
[0003]在实现本申请过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]现有的定时任务调度实现复杂,影响任务调度的时间精度、性能。
技术实现思路
[0005]有鉴于此,本申请实施例提供一种任务调度方法、装置、电子设备及计算机可读介质,能够解决现有的定时任务调度实现复杂,影响任务调度的时间精度、性能的问题。
[0006]为实现上述目的,根据本申请实施例的一个方面,提供了一种任务调度方法,包括:
[0007]接收任务调度请求,获取定时任务存储数组,确定定时任务存储数组中各定时任务对应的任务周期时间和任务执行时间;
[0008]获取当前时间,进而计算各任务执行时间与当前时间的时间差;
[0009]基于各任务周期时间和各时间差,生成对应各定时任务的三元组;
[0010]基于各三元组,调度定时任务存储数组中对应的定时任务。
[0011]可选地,计算各任务执行时间与当前时间的时间差,包括:
[0012]计算当前时间与各任务执行时间的差值;
[0013]确定各差值对应的秒数,进而将各秒数确定为各任务 ...
【技术保护点】
【技术特征摘要】
1.一种任务调度方法,其特征在于,包括:接收任务调度请求,获取定时任务存储数组,确定所述定时任务存储数组中各定时任务对应的任务周期时间和任务执行时间;获取当前时间,进而计算各所述任务执行时间与所述当前时间的时间差;基于各所述任务周期时间和各所述时间差,生成对应所述各定时任务的三元组;基于各所述三元组,调度所述定时任务存储数组中对应的定时任务。2.根据权利要求1所述的方法,其特征在于,所述计算各所述任务执行时间与所述当前时间的时间差,包括:计算所述当前时间与各所述任务执行时间的差值;确定各所述差值对应的秒数,进而将各所述秒数确定为各所述任务执行时间与所述当前时间的时间差。3.根据权利要求1所述的方法,其特征在于,所述生成对应所述各定时任务的三元组,包括:获取所述各定时任务对应的任务函数;基于所述任务周期时间确定一次性任务和周期性任务;将所述一次性任务的对应的任务周期时间设定为0,将所述周期性任务对应的任务周期时间换算为秒数,进而根据各所述任务函数和各所述时间差生成对应所述各定时任务的三元组。4.根据权利要求1所述的方法,其特征在于,所述基于各所述三元组,调度所述定时任务存储数组中对应的定时任务,包括:基于各所述三元组,获取对应的各定时任务的时间差;获取时间累积器的值,进而基于所述时间累积器的值更新所述各定时任务的时间差;遍历所述定时任务数组中的各定时任务,将更新后的时间差小于或等于0时对应的定时任务确定为目标定时任务并执行;响应于所述目标定时任务执行结束并确定所述目标定时任务对应的任务周期时间不为0,将所述目标定时任务对应的三元组中的时间差重置为所述目标定时任务对应的三元组中的任务周期时间。5.根据权利要求4所述的方法,其特征在于,所述基于各所述三元组,调度所述定时任务存储数组中对应的定时任务,还包括:响应于所述目标定时任务执行结束并确定所述目标定时任务对应的任务周期时间为0,删除所述目标定时任务。6.根据权利要求5所述的方法,其特征在于,所述删除所述目标定时任务,包括:获取所述定时任务存储数组中最后一个定时任务;将所述最后一个定时任务移动至所述定时任务存储数组中所述目标定时任务的位置,同时将所述目标定时任务删除。7.根据权利要求4所述的方法,其特征在于,在所述将所述目标定时任务对应的三元组中的时间差重置为所述目标定时任务对应的三元组中的任务周期时间之后,所述方法还包括:在遍历结束所述定时任务存储数组中的各定时任务后,获取计时器值和时间累积器的
数值;将所述计时器值累加至所述时间累积器的数值,进而更新所述时间累积器的数值。8.一种任务调度装置,其特征在于,包括:接收单元,被配置成接收任务调度请求,获取定时任务存储数组,确定所述...
【专利技术属性】
技术研发人员:易淑文,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。