CN106445668B - 定时器的计时方法和装置 - Google Patents

定时器的计时方法和装置 Download PDF

Info

Publication number
CN106445668B
CN106445668B CN201610860452.6A CN201610860452A CN106445668B CN 106445668 B CN106445668 B CN 106445668B CN 201610860452 A CN201610860452 A CN 201610860452A CN 106445668 B CN106445668 B CN 106445668B
Authority
CN
China
Prior art keywords
time
timing
timer
task
boot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610860452.6A
Other languages
English (en)
Other versions
CN106445668A (zh
Inventor
金明水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen TCL Digital Technology Co Ltd
Original Assignee
Shenzhen TCL Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen TCL Digital Technology Co Ltd filed Critical Shenzhen TCL Digital Technology Co Ltd
Priority to CN201610860452.6A priority Critical patent/CN106445668B/zh
Priority to PCT/CN2016/112687 priority patent/WO2018058830A1/zh
Publication of CN106445668A publication Critical patent/CN106445668A/zh
Application granted granted Critical
Publication of CN106445668B publication Critical patent/CN106445668B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Measurement Of Predetermined Time Intervals (AREA)

Abstract

本发明公开了一种定时器的计时的方法,包括:接收到定时任务时,获取***当前的boot时间;以所述boot时间为基准时间开始计时,判断设定的时间是否到达;若设定的时间到达,则执行与所述定时任务相应的任务。本发明还公开了一种定时器的计时装置。本发明通过修改定时器的计时处理逻辑,有效的提高定时器的可靠性。

Description

定时器的计时方法和装置
技术领域
本发明涉及定时器技术领域,尤其涉及一种定时器的计时方法和装置。
背景技术
伴随着科学技术的快速发展,智能***越来越多,对定时器的使用也随处可见。定时器使相当多需要控制时间的工作变得简单了许多,人们也将定时器用在了各个领域,如软件***里,可定时发送信令等。所以,定时器的可靠性是重要之重,如果定时的可靠性得不到保障,会导致预期任务得不到执行,造成严重的后果。
当前的Android***以及Java***,Timer定时器在逻辑处理中,采用的基准时间为当前***时间,即System.currentTimeMillis(),如果此***时间随后被某些进程修改为其他值,则会导致定期器失效,达不到预期目标,定时器可靠性差。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于通过修改定时器的处理逻辑,有效的提高定时器的可靠性。
为实现上述目的,本发明提供的一种定时器的计时方法,包括:
接收到定时任务时,获取***当前的boot时间;
以所述boot时间为基准时间开始计时,判断设定的时间是否到达;
若设定的时间到达,则执行与所述定时任务相应的任务。
优选地,还包括:
在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;
在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时。
优选地,所述以所述boot时间为基准时间开始计时,判断设定的时间是否到达之后,还包括:
若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
优选地,所述方法还包括:
接收计时设置指令,根据设置指令设置计时时间是否包括Sleep时间。
优选地,所述判断设定的时间是否到达包括:
定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达。
此外,为实现上述目的,本发明还提供一种定时器的计时装置,包括:
获取模块,用于接收到定时任务时,获取***当前的boot时间;
判断模块,用于以所述boot时间为基准时间开始计时,判断设定的时间是否到达;
执行模块,用于若设定的时间到达,则执行与所述定时任务相应的任务。
优选地,还包括:
设置模块,用于在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;还用于在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时。
优选地,所述判断模块,还用于若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
优选地,所述设置模块,还用于接收计时设置指令,根据设置指令设置计时时间是否包括sleep时间。
优选地,所述判断模块,还用于定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达。
本发明接收到定时任务时,获取***当前的boot时间;以所述boot时间为基准时间开始计时,判断设定的时间是否到达;若设定的时间到达,则执行与所述定时任务相应的任务。。通过修改定时器的计时处理逻辑,有效的提高定时器的可靠性。
附图说明
图1为本发明定时器的计时方法的第一实施例的流程示意图;
图2为本发明定时器的计时方法的第二实施例的流程示意图;
图3为本发明定时器的计时方法的第三实施例的流程示意图;
图4为本发明定时器的计时装置的第一实施例的功能模块示意图;
图5为本发明定时器的计时装置的第二实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:接收到定时任务时,获取***当前的boot时间;以所述boot时间为基准时间开始计时,判断设定的时间是否到达;若设定的时间到达,则执行与所述定时任务相应的任务。有效避免现有定时器可靠性得不到保障,导致的预期任务执行出错,会造成严重的后果。通过修改定时器的计时处理逻辑,有效的提高定时器的可靠性。
由于现有定时器可靠性得不到保障,导致的预期任务执行出错,会造成严重的后果。
基于上述问题,本发明提供一种定时器的计时方法。
参照图1,图1为本发明定时器的计时方法的第一实施例的流程示意图。
在一实施例中,所述方法包括:
步骤S1,接收到定时任务时,获取***当前的boot时间;
在定时器接收到定时任务时,获取当前***的boot时间,所述接收定时任务,来自当前定时器的用户在定时器上的任务输入,或由定时器关联的硬件设备进行输入。所述当前***的boot时间,为将定时器内置的软件***的***开机时间,或者与定时器关联的外接硬件设备的***开机时间,以***开机时间作为定时器定时基准,避免定时器出现的计时偏差。
步骤S2,以所述boot时间为基准时间开始计时,判断设定的时间是否到达;
根据获取到的boot时间,以boot时间为基准时间使定时器开始计时任务,判断设定的定时器任务的时间是否已到达。所述判断定时器的任务时间是否到达,以当前boot时间开始计时,并在定时器计时满足任务时间后,判断设定的时间已经到达。
具体的,所述判断设定的时间是否到达包括:
定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达。
定时器的定时任务开启,以当前的boot时间为基准开始计时,定时器在计时任务中,根据当前boot时间确定定时器的计时任务是否完成,计算当前boot时间与定时器计时任务开启的boot时间的差值,若该差值与任务时间相等,则判断设定的定时器任务时间已经到达。
步骤S3,若设定的时间到达,则执行与所述定时任务相应的任务。
定时器设置的任务时间到达,执行与所述定时任务相应的任务内容,所述的定时任务相应的任务内容,为用户自定义的内容。
本实施例通过定时器使用***的boot时间判断设定时间是否到达,通过修改定时器的处理逻辑,有效的提高了定时器的可靠性。
参照图2,图2为本发明定时器的计时方法的第二实施例的流程示意图。基于上述方法的第一实施例,所述以所述boot时间为基准时间开始计时,判断设定的时间是否到达之后,还包括:
步骤S4,若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
在定时器时间任务的计时过程中,若设定的任务时间未到达,则继续任务时间的计时操作,按照任务时间的长短,与当前***的boot时间的差值,为定时器任务时间所剩下的计时时间。
参照图3,图3为本发明定时器的计时方法的第三实施例的流程示意图,基于上述方法的第一、二实施例,所述方法还包括:
步骤S5,在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;
定时器开始进入任务计时的待机状态,以便接收到定时器任务后,随时进入计时状态中。在计时器开始计时之前,检查是否包含了线程休眠时间(即sleep时间),若计时器的计时工作中设置包含了sleep时间,则当前***处于待机时,定时器依旧还处于工作状态,所述***,为定时器所在的硬件所使用的***,或者为定时器所关联的硬件设备的***。
步骤S6,在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时;
在计时器开始计时任务之前,检查是否包含了线程休眠时间(即sleep时间),若计时器的计时工作中设置不包含sleep时间,则当前***处于待机时,定时器也暂停计时,待当前***停止休眠被唤醒后,定时器继续执行计时操作。
进一步的,还包括:
接收计时设置指令,根据设置指令设置计时时间是否包括Sleep时间。
步骤S7,在定时器接收到时间任务后,若要对定时器设置计时方式,则向定时器发送计时设置指令,定时器接收到计时设置指令后,根据计时设置指令的内容设置定时器的计时方式,所述的计时方式分为两种,即包括sleep时间和不包括sleep时间。
上述第一至第三实施例的定时器计时方法的执行主体可以为定时器设备或与定时器设备连接的其他电子设备。更进一步地,该定时器的计时方法可以由安装在内置定时器功能的硬件设备或其他定时器关联的电子设备上的***实现,所述硬件设备包括但不限于手机、pad、笔记本电脑等。
本发明进一步提供一种定时器的计时装置。
参照图4,图4为本发明定时器的计时装置的第一实施例的功能模块示意图。
在一实施例中,所述装置包括:获取模块10、判断模块20及执行模块30。
获取模块10,用于接收到定时任务时,获取***当前的boot时间;
在定时器接收到定时任务时,获取当前***的boot时间,所述接收定时任务,来自当前定时器的用户在定时器上的任务输入,或由定时器关联的硬件设备进行输入。所述当前***的boot时间,为将定时器内置的软件***的***开机时间,或者与定时器关联的外接硬件设备的***开机时间,以***开机时间作为定时器定时基准,避免定时器出现的计时偏差。
判断模块20,用于以所述boot时间为基准时间开始计时,判断设定的时间是否到达;
根据获取到的boot时间,以boot时间为基准时间使定时器开始计时任务,判断设定的定时器任务的时间是否已到达。所述判断定时器的任务时间是否到达,以当前boot时间开始计时,并在定时器计时满足任务时间后,判断设定的时间已经到达。
具体的,所述判断设定的时间是否到达包括:
所述判断模块20,还用于定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达。
定时器的定时任务开启,以当前的boot时间为基准开始计时,定时器在计时任务中,根据当前boot时间确定定时器的计时任务是否完成,计算当前boot时间与定时器计时任务开启的boot时间的差值,若该差值与任务时间相等,则判断设定的定时器任务时间已经到达。
执行模块30,用于若设定的时间到达,则执行与所述定时任务相应的任务。
定时器设置的任务时间到达,执行与所述定时任务相应的任务内容,所述的定时任务相应的任务内容,为用户自定义的内容。
本实施例通过定时器使用***的boot时间判断设定时间是否到达,通过修改定时器的处理逻辑,有效的提高了定时器的可靠性。
进一步的,所述以所述boot时间为基准时间开始计时,判断设定的时间是否到达之后,还包括:
所述判断模块20,还用于若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
在定时器时间任务的计时过程中,若设定的任务时间未到达,则继续任务时间的计时操作,按照任务时间的长短,与当前***的boot时间的差值,为定时器任务时间所剩下的计时时间。
参照图5,图5为本发明定时器的计时装置的较佳实施例的功能模块示意图。
在本实施例中,还包括:设置模块40。
设置模块40,用于在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;
定时器开始进入任务计时的待机状态,以便接收到定时器任务后,随时进入计时状态中。在计时器开始计时之前,检查是否包含了线程休眠时间(即sleep时间),若计时器的计时工作中设置包含了sleep时间,则当前***处于待机时,定时器依旧还处于工作状态,所述***,为定时器所在的硬件所使用的***,或者为定时器所关联的硬件设备的***。
所述设置模块40,还用于在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时。
在计时器开始计时任务之前,检查是否包含了线程休眠时间(即sleep时间),若计时器的计时工作中设置不包含sleep时间,则当前***处于待机时,定时器也暂停计时,待当前***停止休眠被唤醒后,定时器继续执行计时操作。
进一步的,所述方法还包括:
所述设置模块40,还用于接收计时设置指令,根据设置指令设置计时时间是否包括sleep时间。
在定时器接收到时间任务后,若要对定时器设置计时方式,则向定时器发送计时设置指令,定时器接收到计时设置指令后,根据计时设置指令的内容设置定时器的计时方式,所述的计时方式分为两种,即包括sleep时间和不包括sleep时间。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种定时器的计时方法,其特征在于,所述方法包括以下步骤:
接收到定时任务时,获取***当前的boot时间,其中所述***当前的boot时间为将定时器内置的软件***的***开机时间,或者与定时器关联的外接硬件设备的***开机时间;
定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达;
若设定的时间到达,则执行与所述定时任务相应的任务。
2.如权利要求1所述的定时器的计时方法,其特征在于,所述方法还包括:
在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;
在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时。
3.如权利要求2所述的定时器的计时方法,其特征在于,所述以所述boot时间为基准时间开始计时,判断设定的时间是否到达之后,还包括:
若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
4.如权利要求2所述的定时器的计时方法,其特征在于,所述方法还包括:
接收计时设置指令,根据设置指令设置计时时间是否包括Sleep时间。
5.一种定时器的计时装置,其特征在于,包括:
获取模块,用于接收到定时任务时,获取***当前的boot时间,其中所述***当前的boot时间为将定时器内置的软件***的***开机时间,或者与定时器关联的外接硬件设备的***开机时间;
判断模块,用于定时器根据定时任务开始计时,计算当前boot时间与任务开始时间的差值,若所述差值与定时任务时间对应,则判定设定的时间到达;
执行模块,用于若设定的时间到达,则执行与所述定时任务相应的任务。
6.如权利要求5所述的定时器的计时装置,其特征在于,还包括:
设置模块,用于在计时时间包括Sleep时间,在***处于待机时,控制计时器保持计时;还用于在计时时间不包括Sleep时间,在***处于待机时,控制计时器暂停计时,并在***唤醒后,继续计时。
7.如权利要求书6所述的定时器的计时装置,其特征在于,所述判断模块,还用于若设定的任务时间未到达,则继续按照设定时间计时,所需等待的时间为设定时间距离当前***boot时间的差值。
8.如权利要求6所述的定时器的计时装置,其特征在于,所述设置模块,还用于接收计时设置指令,根据设置指令设置计时时间是否包括sleep时间。
CN201610860452.6A 2016-09-28 2016-09-28 定时器的计时方法和装置 Active CN106445668B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610860452.6A CN106445668B (zh) 2016-09-28 2016-09-28 定时器的计时方法和装置
PCT/CN2016/112687 WO2018058830A1 (zh) 2016-09-28 2016-12-28 定时器的计时方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610860452.6A CN106445668B (zh) 2016-09-28 2016-09-28 定时器的计时方法和装置

Publications (2)

Publication Number Publication Date
CN106445668A CN106445668A (zh) 2017-02-22
CN106445668B true CN106445668B (zh) 2020-04-10

Family

ID=58170744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610860452.6A Active CN106445668B (zh) 2016-09-28 2016-09-28 定时器的计时方法和装置

Country Status (2)

Country Link
CN (1) CN106445668B (zh)
WO (1) WO2018058830A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933687B (zh) * 2017-03-13 2020-05-12 武汉斗鱼网络科技有限公司 定时方法、装置及电子设备
CN107066327B (zh) * 2017-04-24 2021-07-23 努比亚技术有限公司 定时任务处理方法、移动终端及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064883A (zh) * 2006-04-27 2007-10-31 英业达股份有限公司 时间设定***及方法
CN101196836A (zh) * 2007-12-29 2008-06-11 上海华为技术有限公司 一种控制看门狗电路复位的方法和装置
CN101320337A (zh) * 2008-07-16 2008-12-10 北京中星微电子有限公司 一种定时器及其实现方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755614A (zh) * 2004-09-29 2006-04-05 华为技术有限公司 定时器的实现方法
CN102937893B (zh) * 2012-10-11 2016-07-06 科立讯通信股份有限公司 一种动态重载定时长度的软件定时方法
CN105808301A (zh) * 2016-03-09 2016-07-27 上海斐讯数据通信技术有限公司 一种用于移动终端的定时开启应用的***和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064883A (zh) * 2006-04-27 2007-10-31 英业达股份有限公司 时间设定***及方法
CN101196836A (zh) * 2007-12-29 2008-06-11 上海华为技术有限公司 一种控制看门狗电路复位的方法和装置
CN101320337A (zh) * 2008-07-16 2008-12-10 北京中星微电子有限公司 一种定时器及其实现方法

Also Published As

Publication number Publication date
CN106445668A (zh) 2017-02-22
WO2018058830A1 (zh) 2018-04-05

Similar Documents

Publication Publication Date Title
CN107092568B (zh) 在低功耗***中处理数据的数据通信接口
CN105786187B (zh) 一种可穿戴设备的闹钟时间提醒方法及装置
CN106332159B (zh) Wifi异常自动重连装置、***及方法
EP3163852A1 (en) Close-distance automatic unlocking method and system for mobile terminal
CN105612485B (zh) 一种运行应用程序的方法及装置
EP2884483B1 (en) Apparatus and method for controlling screen display in electronic device
KR102301012B1 (ko) 무선 통신 시스템에서 사용자 단말에 의한 수신과 송신 간의 중첩을 방지하기 위한 방법 및 시스템
CN106445668B (zh) 定时器的计时方法和装置
EP3324269A1 (en) Single-chip microcomputer system, and reset method for single-chip microcomputer system
CN112530056A (zh) 降低智能门锁功耗的方法、智能门锁和存储介质
CN109918145B (zh) 一种应用程序冷启动的加速方法、装置、电子设备
CN104239079A (zh) 电子装置操作***自动唤醒方法及***
CN104683573A (zh) 关机闹钟的实现方法和移动终端
CN104820655B (zh) 一种基于fpga的cpu热插拔实现方法及***
CN104049702A (zh) 一种基于单片机的cpu复位控制***、方法及装置
WO2018028131A1 (zh) 时间控制装置和时间控制方法
CN104915228B (zh) 应用程序语言设置方法及装置
TWI502351B (zh) 電子裝置及其防止資料丟失的方法
US20190384637A1 (en) Controller
CN105095045A (zh) Android***的后台服务监控方法及其***
CN101183317A (zh) 实时中断与多个进程状态同步的方法
CN106339166A (zh) 用于移动终端在关机状态下显示时间的方法及装置
WO2015070741A1 (zh) 一种应用程序的启动方法及装置
CN101976206A (zh) 一种中断处理方法和装置
EP3968156A1 (en) Multi-thread exiting method and mobile terminal

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant