掌桥专利:专业的专利平台
掌桥专利
首页

计时方法、装置、设备以及存储介质

文献发布时间:2023-06-19 19:37:02


计时方法、装置、设备以及存储介质

技术领域

本申请涉及计时技术领域,尤其涉及一种计时方法、装置、设备以及存储介质。

背景技术

在现有技术中,APP(App l i cat i on,应用程序)的倒计时或者正计时的功能都是通过系统自带的计时器来实现的。其工作原理是设定计时器多久执行一次设定的方法与一个倒计时数,如三分钟就设定倒计时数为180,每次执行方法的时候就执行倒计时数减一的操作,直至倒计时数变为0。

由于所有的计时器都会有误差的问题,从而导致计时不准确。

申请内容

本申请的主要目的在于提供一种计时方法、装置、设备以及存储介质,旨在解决计时器自身的误差导致计时不准确的技术问题。

为实现上述目的,本申请提供一种计时方法,包括:

获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳;其中,每个计时最小单位时间内包括至少两个校准周期;

获得所述第一时间戳与所述第二时间戳之间的第一时间差;

根据所述第一时间差,获得计时结果。

可选的,所述获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳,包括:

获取当前校准周期的第二时间戳、用户选择的计时数以及计时开始时刻的第一时间戳;

所述根据所述第一时间差,获得计时结果,包括:

确定所述计时数与所述第一时间差之间的第二时间差;

根据所述第二时间差,获得计时结果。

可选的,所述根据所述第二时间差,获得计时结果之后,所述方法还包括:

判断所述第二时间差是否等于零;

若所述第二时间差等于零,则输出提示信息,以提醒用户计时结束。

可选的,所述根据所述第一时间差,获得计时结果,包括:

若计时为正计时,则将所述第一时间差作为计时结果。

可选的,所述若所述计时为正计时,则将所述第一时间差作为计时结果之后,所述方法还包括:

获取接收到用户的停止计时指令时刻的第三时间戳;

获得所述第三时间戳与所述第一时间戳之间的第三时间差;

根据所述第三时间差,获得最终计时结果,并输出所最终述计时结果。

可选的,所述校准周期的时长为0.5秒。

可选的,所述获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳之前,所述方法还包括:

当接收到用户的计时指令时,对计时器进行初始化处理,获得所述第一时间戳。

第二方面,本申请提供一种计时装置,包括:

获取模块,用于获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳;其中,每个计时最小单位时间内包括至少两个校准周期;

第一获得模块,用于获得所述第一时间戳与所述第二时间戳之间的第一时间差;

第二获得模块,用于根据所述第一时间差,获得计时结果。

第三方面,本申请提供一种计时设备,存储器、处理器以及存储在存储器上并可在处理器上运行的计时程序,计时设备配置为实现如上述的计时方法的步骤。

第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请任意实施例的计时方法。

本申请实施例提出的一种计时方法,相较于现有技术中计时器加一或者减一操作,本申请采用的时间戳计时方式的精度明显更高,加之在每个最小计时单位内至少包括两个校准周期,即至少两次通过时间戳计算得到计时结果,以不断的对计时结果进行校准,从而可以减少计时误差,使得显示的时间更加精准,进而避免长时间计时而出现精度缺失的情况。

附图说明

图1为本申请计时方法实施例的硬件结构示意图;

图2为本申请计时方法第一实施例的流程示意图;

图3为本申请计时方法第二实施例的流程示意图;

图4为本申请计时方法第三实施例的流程示意图;

图5为本申请计时方法第四实施例的流程示意图;

图6为本申请计时方法的功能模块示意图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

由于在现有技术中,通过终端设备自带的计时器实现倒计时或者正计时功能时,由于计时器自身的误差,虽然对于几分钟的计时来说可以忽略该误差,但在长时间计时时,该误差是不可以忽略的,从而导致计时不准确。

本申请提供一种解决方案,相较于现有技术中计时器加一或者减一操作,本申请采用的时间戳计时方式的精度明显更高,加之在每个最小计时单位内至少包括两个校准周期,即至少两次通过时间戳计算得到计时结果,以不断的对计时结果进行校准,从而可以减少计时误差,使得显示的时间更加精准,进而避免长时间计时而出现精度缺失的情况。

参照图1,图1为本申请实施例方案涉及的硬件运行环境的计时设备的结构示意图。

如图1所示,该计时设备可以包括:处理器1001,例如中央处理器(CentralProcess i ng Un it,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Disp l ay)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WI re less-F I de l ity,WI-F I)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Vo l at i l eMemory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的结构并不构成对计时设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及计时程序。

在图1所示的计时设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本申请计时设备中的处理器1001、存储器1005可以设置在计时设备中,计时设备通过处理器1001调用存储器1005中存储的计时程序,并执行本申请实施例提供的计时方法。

基于上述计时设备的硬件结构但不限于上述硬件结构,本申请提供一种计时方法的第一实施例。参照图2,图2示出了申请计时方法第一实施例的流程示意图。

需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本实施例中,所述计时方法包括:

步骤S10、获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳;其中,每个计时最小单位时间内包括至少两个校准周期。

计时方法的执行主体为安装有计时器的终端设备,终端设备可以是具有显示、交互功能的智能手机、平板以及计算机等,本实施例并不对此进行限定。如,终端设备和用户的交互可以是用户在智能手机打开计时程序,并点击计时开始控件,从而开始计时,用户点击计时开始控件的时刻即为计时开始时刻。

在本实施例中,时间戳可以是指从一初始时刻开始进行计数,每过一秒钟加1,一直不断累加,即每个时刻都有一个唯一的值。该初始时刻可以是1970年01月01日08点00分00秒开始。如,1970年1月1日8:10分的时间戳就是600。从计时开始时刻起,计时器根据校准周期的周期时长,重复获取每个校准周期的开始时刻的时间戳,直至计时结束。如,当校准周期的周期时长为0.5秒时,且开始计时的时刻为1970年01月01日08点10分00秒时,读取的第一个校准周期的开始时刻也即是计时开始时刻,因此第一个校准周期的第二时间戳也即是第一时间戳为600,0.5S后读取的第二个校准周期的第二时间戳仍然为600,再过0.5S后读取的第三个校准周期的第二时间戳为601,直至计时结束。

具体的,用户在1970年1月1日8:10分准时设定一个五分钟的倒计时,1970年1月1日8:15分计时完毕,也即计时300秒,则可以确定计时开始时刻的第一时间戳为600,计时数为300秒。

步骤S20、获得所述第一时间戳与所述第二时间戳之间的第一时间差。

步骤S30、根据所述第一时间差,获得计时结果。

在本实施例中,第一时间差是第一时间戳与第二时间戳之间的差值的绝对值。如,当第一时间戳为600,第二时间戳为605时,获得第一时间戳与第二时间戳之间的差值为5,则可以确定第一时间差为5秒。

可以理解的是,在获得第一时间差后,可以将第一时间差与计时数进行对比,当第一时间差与计时数不相等时,则确定计时还未结束。或者可以通过获得计时数与第一时间差之间的时间差值,当时间差值不等于零时,则确定计时还未结束。

在本实施例中,相较于现有技术中计时器加一或者减一操作,本申请采用的时间戳计时方式的精度明显更高,加之在每个最小计时单位内至少包括两个校准周期,即至少两次通过时间戳计算得到计时结果,以不断的对计时结果进行校准,从而可以减少计时误差,使得显示的时间更加精准,进而避免长时间计时而出现精度缺失的情况。

除此之外,本实施例还可以避免因开发者的疏忽,忘记初始化计时器或者因计时器存在一些错误的调用,导致计时器由原本的一秒钟运行一次,变为一秒钟运行两次甚至多次,从而使得计时不准确的情况出现。

进一步的,作为一个实施例,参照图3,本申请提供计时方法的第二实施例,基于上述图3所示的实施例,所述步骤S30包括:

步骤S301、确定所述计时数与所述第一时间差之间的第二时间差。

步骤S302、根据所述第二时间差,获得计时结果。

在本实施例中,计时数可以是用户设置的计时总时长,如,用户在1970年1月1日8:00,设置了到1970年1月1日8:10分的倒计时,可以确定计时数为600秒。第二时间差可以是计时数与第一时间差之间的差值。

具体的,当用户设置的计时指令是倒计时时,此时则需获取当前校准周期的第二时间戳、用户选择的计时数以及计时开始时刻的第一时间戳,并根据计时数与第一时间差之间的第二时间差,确定计时结果。

如,用户在1970年1月1日8:09:59秒设置了一个五分钟的倒计时,到1970年1月1日8:15:00,也即计时300秒,则可以确定计时开始时刻的第一时间戳为600,计时数为300S。可以理解的,当校准周期时长为0.5秒时,且当前周期为第十一个周期时,则获得的第二时间戳为605,获得的第一时间差为5秒,根据第一时间差与计时数可以确定第二时间差为295秒。可以理解的,当第二时间差为零时,则输出提示信息,以提醒用户计时结束。

在一示例中,在获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳之前,终端设备还需要根据接收到的计时指令,对计时器进行初始化处理,以确定出第一校准周期的开始时刻,并获得第一时间戳,从而使获得的第一时间戳更准确,进而减少第二时间戳与第一时间戳之间的第一时间差的误差。其中,计时指令可以是倒计时指令,也可以是正计时指令。

在本实施例中,当计时指令为倒计时指令时,根据当前校准周期的第二时间戳、用户选择的计时数以及计时开始时刻的第一时间戳,获得计时结果,即确定所述计时数与所述第一时间差之间的第二时间差,将第二时间差作为计时结果,可以使得计时结果更准确,从而而避免计时器的精度丢失。

进一步的,作为一个实施例,参照图4,本申请提供计时方法的第三实施例,基于上述图4所示的实施例,所述步骤S30包括:

步骤S30适应性变为步骤S31:若计时为正计时,则将所述第一时间差作为计时结果。

在本实施例中,正计时可以是计时结束时刻的时间戳相对于计时开始时刻的时间戳之间的时间差。

可以理解的,当用户设置的计时指令为正计时指令时,此时则将第三时间戳与第一时间戳之间的第三时间差作为最终计时结果,此时参照图5所示,提供计时方法的第四实施例,在步骤S31之后,还包括:

步骤S32、获取接收到用户的停止计时指令时刻的第三时间戳。

步骤S33、获得所述第三时间戳与所述第一时间戳之间的第三时间差。

步骤S34、根据所述第三时间差,获得最终计时结果,并输出所述最终计时结果。

具体的,当终端设备接收到用户停止计时指令时,获取接收到停止计时指令时刻的第三时间戳,如,当终端设备在1970年1月1日8:10:00时,接收到停止计时指令,可以确定第三时间戳为600,并将第三时间戳与第一时间戳之间的第三时间差作为最终计时结果。

如,通话开始后进行正计时,用户A在1970年1月1日8:10:00时接通了用户B拨来的电话,可以确定第一时间戳为600。当用户A或者用户B在在1970年1月1日8:15:00挂断电话时,此时可以确定第三时间戳为900,可以获得第一时间戳与第三时间戳之间的第三时间差为300秒,可以确定用户A与用户B的通话时长为300秒,即最终计时结果为300秒,并可以在通话界面显示通话时长,以向用户展示此次通话时长。

在本实施例中,当计时指令为正计时指令时,则获取接收到用户的停止计时指令时刻的第三时间戳,根据第三时间戳与第一时间戳之间的第三时间差获得最终计时结果,从而可以准确的获取计时结束的时间,使得最终计时结果更准确,进而避免计时器的精度丢失。

基于同一发明构思,提出本申请计时装置,参考图6,图6为本申请计时装置模块示意图。

获取模块10,用于获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳;其中,每个计时最小单位时间内包括至少两个校准周期。

第一获得模块20,用于获得所述第一时间戳与所述第二时间戳之间的第一时间差。

第二获得模块30,用于根据所述第一时间差,获得计时结果。

本实施例的技术方案,通过各个功能模块间的相互配合,在获取当前校准周期的第二时间戳以及计时开始时刻的第一时间戳,获得所述第一时间戳与所述第二时间戳之间的第一时间差,根据所述计时数与所述第一时间差,获得计时结果。由此,本实施例相较于现有技术中计时器加一或者减一操作,本实施例采用的时间戳计时方式的精度明显更高,加之在每个最小计时单位内至少包括两个校准周期,即至少两次通过时间戳计算得到计时结果,以不断的对计时结果进行校准,从而可以减少计时误差,使得显示的时间更加精准,进而避免长时间计时而出现精度缺失的情况。

此外,本申请实施例还提出一种计算机存储介质,存储介质上存储有计时程序,计时程序被处理器执行时实现如上文的计时方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。确定为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-On l yMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(ROM,Read-On l yMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。

以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

技术分类

06120115970656