CN110389879A - 获取性能数据的方法和装置 - Google Patents

获取性能数据的方法和装置 Download PDF

Info

Publication number
CN110389879A
CN110389879A CN201910679054.8A CN201910679054A CN110389879A CN 110389879 A CN110389879 A CN 110389879A CN 201910679054 A CN201910679054 A CN 201910679054A CN 110389879 A CN110389879 A CN 110389879A
Authority
CN
China
Prior art keywords
event
performance data
application
time
current
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.)
Granted
Application number
CN201910679054.8A
Other languages
English (en)
Other versions
CN110389879B (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.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Huaduo Network 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 Guangzhou Huaduo Network Technology Co Ltd filed Critical Guangzhou Huaduo Network Technology Co Ltd
Priority to CN201910679054.8A priority Critical patent/CN110389879B/zh
Publication of CN110389879A publication Critical patent/CN110389879A/zh
Application granted granted Critical
Publication of CN110389879B publication Critical patent/CN110389879B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Telephone Function (AREA)

Abstract

本申请公开了一种获取性能数据的方法及装置,属于终端技术领域。在本申请中,监听第一应用在运行过程中的事件回调,第一应用为当前设备安装的多个应用中的任一应用,然后根据监听到的第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据。由于第一应用在运行过程中进行事件回调时,最有可能发生性能数据的变化,因此此时获取的当前设备的性能数据较为精准。并且由于这样获取性能数据的频率较低,因此该技术方案能够在获取的当前设备的性能数据较为精准的前提下消耗更少的系统资源。

Description

获取性能数据的方法和装置
技术领域
本申请涉及终端技术领域,特别涉及一种获取性能数据的方法和装置。
背景技术
随着各种大型APP(application,应用)的推广和应用,终端上安装的APP越来越多。其中,APP的运行会占用该终端的内存、CPU等,这时就需要该终端来获取APP的性能数据,如内存占用率、CPU占用率等,以便为该终端进行内存、CPU的合理分配等提供数据支持。
相关技术中,终端可以按照显示屏的帧刷新率来获取性能数据。通常,终端的显示屏的帧刷新频率为0.02s,也即,终端可以每隔0.02s即获取一次性能数据。
由于终端的显示屏的帧刷新频率较高,因此,终端按照该帧刷新频率来获取性能数据将非常消耗系统资源。
发明内容
本申请实施例提供了一种获取性能数据的方法和装置,可以用于解决相关技术中获取性能数据时系统资源消耗较大的问题。所述技术方案如下:
一方面,提供了一种获取性能数据的方法,所述方法包括:
监听第一应用在当前运行过程中的事件回调,所述第一应用为当前设备安装的多个应用中的任一应用;
根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据。
可选地,所述根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据,包括:
从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据,所述
其中,所述n是指从所述第一时刻起获取所述当前设备的性能数据的次数。
可选地,所述方法还包括:
从所述第一应用开始运行的时刻起,检测是否接收到页面切换事件;
若检测到所述页面切换事件,则将检测到所述页面切换事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
可选地,所述方法还包括:
从所述第一应用开始运行的时刻起,检测是否接收到关键业务事件,所述关键业务事件是指所述第一应用的当前页面所对应的关键事件;
如果检测到所述关键业务事件,则将检测到所述关键业务事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
可选地,所述根据监听到的所述第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据,包括:
每当监听到事件回调时,统计从最近一次获取到所述当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;
当所述事件回调的次数达到第一阈值时,获取所述当前设备的性能数据,所述第一阈值大于最近一次获取到所述当前设备的性能数据时统计的事件回调的次数。
另一方面,提供了一种获取性能数据的装置,该装置包括:
监听模块,用于监听第一应用在当前运行过程中的事件回调,所述第一应用为当前设备安装的多个应用中的任一应用;
获取模块,用于根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据。
可选地,所述获取模块具体用于:
从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据,所述
其中,所述n是指从所述第一时刻起获取所述当前设备的性能数据的次数。
可选地,所述装置还包括:
第一检测模块,用于从所述第一应用开始运行的时刻起,检测是否接收到页面切换事件;
所述获取模块,用于如果检测到所述页面切换事件,则将检测到所述页面切换事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
可选地,所述装置还包括:
第二检测模块,用于从所述第一应用开始运行的时刻起,检测是否接收到关键业务事件,所述关键业务事件是指所述第一应用的当前页面所对应的关键事件;
所述获取模块,用于如果检测到所述关键业务事件,则将检测到所述关键业务事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
可选地,所述获取模块包括:
统计子模块,用于每当监听到事件回调时,统计从最近一次获取到所述当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;
获取子模块,用于当所述事件回调的次数达到第一阈值时,获取所述当前设备的性能数据,所述第一阈值大于最近一次获取到所述当前设备的性能数据时统计的事件回调的次数。
另一方面,提供了一种获取性能数据的装置,所述装置包括处理器、通信接口、存储器和通信总线;
其中,所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器用于存放计算机程序;
所述处理器用于执行所述存储器上所存放的程序,以实现前述提供获取性能数据的方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前述提供的获取性能数据的方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,监听第一应用在运行过程中的事件回调,然后根据监听到的第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据。由于第一应用在运行过程中进行事件回调时,最有可能发生性能数据的变化,因此此时获取的当前设备的性能数据较为精准。并且由于这样获取性能数据的频率较低,因此通过本申请提供的方法能够在获取的当前设备的性能数据较为精准的前提下消耗更少的系统资源。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种获取性能数据的方法流程图;
图2是本申请实施例提供的一种获取性能数据的装置的结构示意图;
图3是本申请实施例提供的另一种获取性能数据的装置的结构示意图;
图4是本申请实施例提供的又一种获取性能数据的装置的结构示意图;
图5是本申请实施例提供的一种终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例涉及的应用场景予以介绍。
随着各种大型APP的推广和应用,终端上安装的APP越来越多。其中,APP的运行会占用终端的内存、CPU等,并且,随着APP运行状态的变化,APP的内存、CPU等占用率会发生变化,也即,终端的性能数据会发生变化。例如,终端上安装的直播APP在运行过程时会占用该终端的内存、CPU等,并且,在该直播APP运行的过程中,该直播APP的内存占用率、CPU占用率会发生变化。基于此,终端可以获取APP运行过程中的性能数据,以此来为后续系统资源的分配提供数据支持。
接下来对本申请实施例提供的获取性能数据的方法进行介绍。
图1是本申请实施例提供的一种获取性能数据的方法的流程图,该方法可以应用于智能手机、平板电脑等智能设备中,接下来本申请实施例以该方法应用于终端中为例来进行解释说明。如图1所示,该方法可以包括以下步骤:
步骤101:监听第一应用在当前运行过程中的事件回调,第一应用为终端安装的多个应用中的任一应用。
通常,终端中安装有多个应用,每个应用在运行过程中均会占用一定的系统资源。而性能数据可以用于表征终端当前的资源使用状况,基于此,在本申请实施例中,终端可以通过获取的性能数据来确定终端当前资源的使用情况,以便后续可以根据该性能数据为各个应用分配运算资源。
其中,本申请实施例中的第一应用可以是终端安装的多个应用中的任一应用。对于本申请实施例中的多个应用中的其他应用,在这些应用的运行过程中,均可以参照本申请实施例介绍的获取性能数据的方法来获取性能数据。
需要说明的是,终端在启动第一应用时,可以创建第一应用的主线程。该主线程可以对应有一个运行循环对象。终端可以通过该运行循环对象来监听第一应用在当前运行过程中的事件回调。其中,事件回调可以表明当前有事件需要处理。运行循环对象可以监测输入事件,并在监测到有事件需要处理时唤醒,在事件处理完成之后,进入休眠状态。需要说明的是,该运行循环对象在进入休眠状态之前可以生成休眠通知,终端在接收到该运行循环对象的休眠通知之后即可以确定此次的事件处理完成,该运行循环对象即将进入到休眠状态。接下来,如果终端通过该运行循环对象再次监听到事件回调,则内存占有率、CPU占有率等性能数据很可能发生变化,基于此,每当终端接收到休眠通知,即可以通过运行循环对象来监听事件回调。
可选地,终端也可以从第一应用开始运行的时刻起,实时的通过运行循环对象来监听事件回调。
值得注意的是,对于不同操作系统的终端,运行循环对象不同。例如,当终端的操作系统为IOS系统时,该运行循环对象可以为runloop对象。
步骤102:根据监听到的第一应用在运行过程中的事件回调的次数,获取终端的性能数据。
由前述介绍可知,第一应用中在当前运行过程中发生事件回调时,表明当前有事件要进行处理,此时,终端的性能数据最可能发生变化,因此根据监听到的第一应用在运行过程中的事件回调的次数来获取当前设备的性能数据,获取到的性能数据较为精准。
在本申请实施例中,终端可以通过以下几种不同的实现方式来获取当前设备的性能数据。
第一种实现方式:从第一时刻起,每监听到F(n)次事件回调,则获取一次当前设备的性能数据。其中,n是指从第一时刻起获取所述当前设备的性能数据的次数。
在本申请实施例中,第一时刻可以是指第一应用开始运行的时刻,或者,第一时刻也可以是指第一应用在当前运行过程中的某个时刻。需要说明的是,F(n)实际上是一个斐波那契数列。
示例性地,终端可以从第一应用开始运行的时刻起,在第一次监听到事件回调时,进行第一次性能数据的获取。在第一次获取性能数据之后,当终端再次监听到一次事件回调时,即进行第二次性能数据的获取。在第二次获取性能数据之后,当终端再次监听到两次事件回调时,则进行第三次性能数据的获取。以此类推,在第n-1次获取性能数据之后,当终端再次监听到F(n)次事件回调时,终端可以进行第n次性能数据的获取。换句话说,在第n-1获取性能数据的时刻到第n次获取性能数据的时刻之间,终端监听到的事件回调的次数可以为F(n)。
基于上述描述可知,随着时间的推移,相邻两次获取性能数据的时刻之间间隔的事件回调的次数按照斐波那契数列的规律而增加。也即,获取性能数据的频率在递减,这样,可以减少系统资源的消耗。同时,由于第一应用当前显示的页面存在时间越长,页面数据越稳定,性能数据变化越小,因此,即使采集性能数据的频率降低,也不容易由于有突发事件时性能数据发生变化而导致遗漏采集性能数据的时机,保证了获取的性能数据的准确性。
需要说明的是,性能数据可以包括内存占有率、CPU占用率等能够表征终端性能的数据。
第二种实现方式:每当监听到事件回调时,统计从最近一次获取到当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;当事件回调的次数达到第一阈值时,获取当前设备的性能数据,第一阈值大于最近一次获取到当前设备的性能数据时统计的事件回调的次数。
在该种实现方式中,终端可以从第一应用开始运行起,当监听到第一指定次数的事件回调时,即进行第一次性能数据的获取。在第一次获取性能数据之后,终端可以重新统计监听到的事件回调的次数,当重新统计的事件回调的次数大于第一指定次数时,即可以进行第二次性能数据的获取。以此类推,这样,随着时间的推移,每相邻两次获取性能数据之间间隔的事件回调次数逐渐增加,也即,获取性能数据的频率逐渐降低,减小了系统资源的消耗,同时还保证了获取的性能数据的准确性。
示例性地,在第一次获取性能数据之后,终端可以每监听到一次事件回调,统计从上一次获取性能数据之后,到当前监听到该事件回调为止,这期间监听到的事件回调的次数,如果统计的次数大于第一指定次数,且与第一指定次数之间的差值为指定差值,则可以进行第二次性能数据获取,以此类推。
例如,假设第一指定次数为1,也即,从第一应用开始运行起,在第一次监听到事件回调时,该终端可以获取一次性能数据。在获取性能数据之后,该终端可以继续监听事件回调,并重新统计事件回调的次数。假设指定差值为2,则当终端再次监听到3次事件回调时,该终端可以再次进行一次性能数据的获取。在再次获取性能数据之后,终端继续监听事件回调,并重新统计事件回调的次数。当终端重新统计的次数达到5时,则可以进行第三次性能数据的获取,以此类推。
第三种实现方式,每当监听到指定次数的事件回调时,获取一次该终端的性能数据。
也即,在本申请实施例中,该终端可以间隔相同次的事件回调来获取性能数据。例如,可以每监听到两次事件回调时,即获取一次性能数据。
可选地,在本申请实施例中,在第一应用的运行过程中,该终端还可以实时检测是否接收到页面切换事件,如果检测到页面切换事件,则将检测到页面切换事件的时刻作为第一时刻,并从第一时刻起,通过上述第一种实现方式或第二种实现方式来获取性能数据。
换句话说,在本申请实施例中,从第一应用开始运行起,终端即可以采用前述的几种实现方式来获取性能数据。在该第一应用的运行过程中,终端可以通过系统API(Application Programming Interface,应用程序接口)检测第一应用的页面切换事件。如果该终端接收到页面切换事件,则说明接下来第一应用将从当前页面切换至其他页面,也即,第一应用的显示页面将会发生变化。而显示页面发生变化通常均会导致性能数据发生变化,基于此,在检测到页面切换事件之后,该终端可以将检测到该页面切换事件的时刻作为一个新的起始时刻,也即第一时刻,从这个时刻开始重新通过前述的方法来获取第一应用在显示该新的页面的过程中的性能数据。
示例性地,假设终端从第一应用开始运行的时刻起,即开始通过上述第一种实现方式中的方法来获取性能数据。在进行第三次数据获取之后,还未到达第四次数据获取的时机之前,如果终端检测到页面切换事件,则终端可以从这个时刻开始,重新从F(1)开始进行数据获取。也即,终端可以从这个时刻开始,在监听到第一次事件回调时,即获取一次性能数据。之后,再监听到一次事件回调时,再次获取性能数据。之后,再次监听到两次事件回调时,则进行第三次性能数据获取,以此类推,从F(1)开始,按照F(n)的规律,获取性能数据。
可选地,在本申请实施例中,在第一应用的运行过程中,该终端还可以实时检测是否接收到关键业务事件,该关键业务事件是指第一应用的当前页面所对应的关键事件。如果检测到关键业务事件,则将检测到关键业务事件的时刻作为第一时刻,并从第一时刻起,通过上述第一种实现方式或第二种实现方式来获取性能数据。
需要说明的是,在终端通过上述几种实现方式获取性能数据的同时,在该第一应用的运行过程中,该终端还可以通过系统API来对该第一应用的当前页面中接收到的业务事件进行检测。其中,每个业务事件会有相应的优先级,终端可以按照每个业务事件的优先级来判断接收到的业务事件是否为关键业务事件。当接收到的业务事件的优先级大于指定优先级时,即可以认为该业务事件为关键业务事件。或者,该终端也可以将一些指定的业务事件作为关键业务事件。也即,当终端检测到某一类型的业务事件时,即可以将该业务事件确定为关键业务事件。由于关键业务事件之后通常还会存在密集的事件回调,有可能发生较大的性能数据变化,因此,该终端可以将检测到该关键业务事件的时刻作为一个新的起始时刻,也即第一时刻,从这个时刻开始重新通过前述的方法来获取第一应用在显示该新的页面的过程中的性能数据。
示例性地,如果第一应用为直播应用,则在直播应用中,有用户送礼物时,接下来往往会发生显示礼物动画和广播事件等一系列密集的事件回调,因此,在直播应用中,即可以将接收到的第一应用发送礼物赠送请求等与赠送礼物相关的事件作为关键业务事件,或者是设定较高的优先级。这样,当终端检测到这一类的事件时,即可以将检测到该关键业务事件的时刻作为一个新的起始时刻,也即第一时刻,从这个时刻开始重新通过前述的方法来获取第一应用在显示该新的页面的过程中的性能数据。
例如,假设终端从第一应用开始运行的时刻起,即开始通过上述第一种实现方式中的方法来获取性能数据。在进行第三次数据获取之后,还未到达第四次数据获取的时机之前,如果终端检测到关键业务事件,则终端可以从这个时刻开始,重新从F(1)开始进行数据获取。也即,终端可以从这个时刻开始,在监听到第一次事件回调时,即获取一次性能数据。之后,再监听到一次事件回调时,再次获取性能数据。之后,再次监听到两次事件回调时,则进行第三次性能数据获取,以此类推,从F(1)开始,按照F(n)的规律,获取性能数据。
需要说明的是,在本申请实施例中,在第一应用的运行过程中,终端可以及检测页面切换事件,又检测关键业务事件。当检测到二者中的任一种事件时,即可以将检测到相应事件的时刻作为第一时刻,并从第一时刻起,通过上述第一种实现方式或第二种实现方式来获取性能数据。
在本申请实施例中,终端可以监听第一应用在运行过程中的事件回调,然后根据监听到的第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据。由于第一应用在运行过程中进行事件回调时,说明第一应用有事件需要处理,此时,最有可能发生性能数据的变化,因此,在此时获取的当前设备的性能数据较为精准。并且由于这样获取性能数据的频率较低,因此通过本申请提供的方法能够在获取的当前设备的性能数据较为精准的前提下消耗更少的系统资源。
参见图2,本申请实施例提供了一种获取性能数据的装置200,该装置200包括:
监听模块201,用于监听第一应用在当前运行过程中的事件回调,第一应用为当前设备安装的多个应用中的任一应用;
获取模块202,用于根据监听到的第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据。
可选地,获取模块202具体用于:
从第一时刻起,每监听到F(n)次事件回调,则获取一次当前设备的性能数据,
其中,n是指从第一时刻起获取当前设备的性能数据的次数。
可选地,参见图3,该装置200还包括:
第一检测模块203,用于从第一应用开始运行的时刻起,检测是否接收到页面切换事件;
获取模块202,具体用于如果检测到页面切换事件,则将检测到页面切换事件的时刻作为第一时刻,执行从第一时刻起,每监听到F(n)次事件回调,则获取一次当前设备的性能数据的步骤。
可选地,参见图4,该装置200还包括:
第二检测模块204,用于从第一应用开始运行的时刻起,检测是否接收到关键业务事件,关键业务事件是指第一应用的当前页面所对应的关键事件;
获取模块202,具体用于如果检测到关键业务事件,则将检测到关键业务事件的时刻作为第一时刻,执行从第一时刻起,每监听到F(n)次事件回调,则获取一次当前设备的性能数据的步骤。
可选地,该获取模块202包括:
统计子模块,用于每当监听到事件回调时,统计从最近一次获取到当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;
获取子模块,用于当事件回调的次数达到第一阈值时,获取当前设备的性能数据,第一阈值大于最近一次获取到当前设备的性能数据时统计的事件回调的次数。
综上所述,在本申请实施例中,监听第一应用在运行过程中的事件回调,然后根据监听到的第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据。由于第一应用在运行过程中进行事件回调时,说明第一应用有事件需要处理,此时,最有可能发生性能数据的变化,因此,在此时获取的当前设备的性能数据较为精准。并且由于这样获取性能数据的频率较低,因此通过本申请提供的方法能够在获取的当前设备的性能数据较为精准的前提下消耗更少的系统资源。
需要说明的是:上述实施例提供的获取性能数据的装置在获取性能数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的获取性能数据的装置与获取性能数据的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5示出了本申请一个示例性实施例提供的终端500的结构示意图。该终端500可以是:手机、平板电脑、笔记本电脑或台式电脑等。终端500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的获取性能数据的方法。
在一些实施例中,终端500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、触摸显示屏505、摄像头506、音频电路507、定位组件508和电源509中的至少一种。
外围设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在再一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位终端500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。
加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制触摸显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在终端500的侧边框和/或触摸显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在触摸显示屏505的下层时,由处理器501根据用户对触摸显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制触摸显示屏505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏505的显示亮度;当环境光强度较低时,调低触摸显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。
接近传感器516,也称距离传感器,通常设置在终端500的前面板。接近传感器516用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制触摸显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制触摸显示屏505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图5中示出的结构并不构成对终端500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上述图1所示本申请实施例提供的获取性能数据的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述图1所示本申请实施例提供的获取性能数据的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种获取性能数据的方法,其特征在于,所述方法包括:
监听第一应用在当前运行过程中的事件回调,所述第一应用为当前设备安装的多个应用中的任一应用;
根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据。
2.根据权利要求1所述的方法,其特征在于,所述根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据,包括:
从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据,所述
其中,所述n是指从所述第一时刻起获取所述当前设备的性能数据的次数。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
从所述第一应用开始运行的时刻起,检测是否接收到页面切换事件;
如果检测到所述页面切换事件,则将检测到所述页面切换事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
从所述第一应用开始运行的时刻起,检测是否接收到关键业务事件,所述关键业务事件是指所述第一应用的当前页面所对应的关键事件;
如果检测到所述关键业务事件,则将检测到所述关键业务事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
5.根据权利要求1所述的方法,其特征在于,所述根据监听到的所述第一应用在运行过程中的事件回调的次数,获取当前设备的性能数据,包括:
每当监听到事件回调时,统计从最近一次获取到所述当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;
当所述事件回调的次数达到第一阈值时,获取所述当前设备的性能数据,所述第一阈值大于最近一次获取到所述当前设备的性能数据时统计的事件回调的次数。
6.一种获取性能数据的装置,其特征在于,所述装置包括:
监听模块,用于监听第一应用在当前运行过程中的事件回调,所述第一应用为当前设备安装的多个应用中的任一应用;
获取模块,用于根据监听到的所述第一应用在运行过程中的事件回调的次数,获取所述当前设备的性能数据。
7.根据权利要求6所述的装置,其特征在于,所述获取模块具体用于:
从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据,所述
其中,所述n是指从所述第一时刻起获取所述当前设备的性能数据的次数。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一检测模块,用于从所述第一应用开始运行的时刻起,检测是否接收到页面切换事件;
所述获取模块,用于如果检测到所述页面切换事件,则将检测到所述页面切换事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二检测模块,用于从所述第一应用开始运行的时刻起,检测是否接收到关键业务事件,所述关键业务事件是指所述第一应用的当前页面所对应的关键事件;
所述获取模块,用于如果检测到所述关键业务事件,则将检测到所述关键业务事件的时刻作为所述第一时刻,执行所述从第一时刻起,每监听到F(n)次事件回调,则获取一次所述当前设备的性能数据的步骤。
10.根据权利要求6所述的装置,其特征在于,所述获取模块包括:
统计子模块,用于每当监听到事件回调时,统计从最近一次获取到所述当前设备的性能数据的时刻起到当前时刻之间监听到的事件回调的次数;
获取子模块,用于当所述事件回调的次数达到第一阈值时,获取所述当前设备的性能数据,所述第一阈值大于最近一次获取到所述当前设备的性能数据时统计的事件回调的次数。
CN201910679054.8A 2019-07-25 2019-07-25 获取性能数据的方法和装置 Active CN110389879B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910679054.8A CN110389879B (zh) 2019-07-25 2019-07-25 获取性能数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910679054.8A CN110389879B (zh) 2019-07-25 2019-07-25 获取性能数据的方法和装置

Publications (2)

Publication Number Publication Date
CN110389879A true CN110389879A (zh) 2019-10-29
CN110389879B CN110389879B (zh) 2023-10-31

Family

ID=68287364

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910679054.8A Active CN110389879B (zh) 2019-07-25 2019-07-25 获取性能数据的方法和装置

Country Status (1)

Country Link
CN (1) CN110389879B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033766A1 (en) * 2003-06-27 2005-02-10 Microsoft Corporation Method and framework for providing system performance information
US20080127301A1 (en) * 2006-08-28 2008-05-29 Microsoft Corporation Delivering Callbacks Into Secure Application Areas
CN107341062A (zh) * 2017-06-28 2017-11-10 百度在线网络技术(北京)有限公司 一种数据推送方法、装置、设备以及存储介质
CN108304303A (zh) * 2018-01-03 2018-07-20 珠海金山网络游戏科技有限公司 一种统计帧同步服务器的脚本运行性能的方法和系统
CN109298995A (zh) * 2017-07-24 2019-02-01 北京搜狗科技发展有限公司 一种性能测试方法、装置、电子设备以及存储介质
CN109542731A (zh) * 2018-11-28 2019-03-29 北京物资学院 一种面向gpu的层次递进下钻的性能监测方法
CN109840177A (zh) * 2017-11-24 2019-06-04 腾讯科技(深圳)有限公司 一种卡顿的处理方法及相关设备
CN109901916A (zh) * 2019-02-26 2019-06-18 北京小米移动软件有限公司 事件的回调函数执行方法、装置、存储介质和移动终端

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033766A1 (en) * 2003-06-27 2005-02-10 Microsoft Corporation Method and framework for providing system performance information
US20080127301A1 (en) * 2006-08-28 2008-05-29 Microsoft Corporation Delivering Callbacks Into Secure Application Areas
CN107341062A (zh) * 2017-06-28 2017-11-10 百度在线网络技术(北京)有限公司 一种数据推送方法、装置、设备以及存储介质
CN109298995A (zh) * 2017-07-24 2019-02-01 北京搜狗科技发展有限公司 一种性能测试方法、装置、电子设备以及存储介质
CN109840177A (zh) * 2017-11-24 2019-06-04 腾讯科技(深圳)有限公司 一种卡顿的处理方法及相关设备
CN108304303A (zh) * 2018-01-03 2018-07-20 珠海金山网络游戏科技有限公司 一种统计帧同步服务器的脚本运行性能的方法和系统
CN109542731A (zh) * 2018-11-28 2019-03-29 北京物资学院 一种面向gpu的层次递进下钻的性能监测方法
CN109901916A (zh) * 2019-02-26 2019-06-18 北京小米移动软件有限公司 事件的回调函数执行方法、装置、存储介质和移动终端

Also Published As

Publication number Publication date
CN110389879B (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
CN110308956B (zh) 一种应用界面显示方法、装置及移动终端
CN108762881B (zh) 界面绘制方法、装置、终端及存储介质
CN108449641B (zh) 播放媒体流的方法、装置、计算机设备和存储介质
CN108897659B (zh) 修改日志级别的方法、装置及存储介质
CN109068008B (zh) 铃声设置方法、装置、终端及存储介质
CN108132790B (zh) 检测无用代码的方法、装置及计算机存储介质
CN110839128B (zh) 拍照行为检测方法、装置及存储介质
CN110288689B (zh) 对电子地图进行渲染的方法和装置
CN109102811B (zh) 音频指纹的生成方法、装置及存储介质
CN109783176B (zh) 切换页面的方法和装置
CN108401194B (zh) 时间戳确定方法、装置和计算机可读存储介质
CN108664300B (zh) 一种画中画模式下的应用界面显示方法及装置
CN110769120A (zh) 进行消息提醒的方法、装置、设备及存储介质
CN112966130B (zh) 多媒体资源展示方法、装置、终端及存储介质
CN107943484B (zh) 执行业务功能的方法和装置
CN112015612B (zh) 一种获取卡顿信息的方法及装置
CN111914985B (zh) 深度学习网络模型的配置方法、装置及存储介质
CN108647127B (zh) 应用耗电监控方法及装置
CN111797017A (zh) 存储日志的方法、装置、测试设备及存储介质
CN111930438A (zh) 确定页面加载时长的方法、装置、设备及存储介质
CN116700826A (zh) 微件启动方法、装置、设备及计算机可读存储介质
CN112181915A (zh) 执行业务的方法、装置、终端和存储介质
CN115904181A (zh) 窗口管理方法及装置
CN111464829B (zh) 切换媒体数据的方法、装置、设备及存储介质
CN110941458B (zh) 启动应用程序的方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20210115

Address after: 511442 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511446 28th floor, block B1, Wanda Plaza, Wanbo business district, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20191029

Assignee: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2021440000054

Denomination of invention: Method and device for obtaining performance data

License type: Common License

Record date: 20210208

EE01 Entry into force of recordation of patent licensing contract
GR01 Patent grant
GR01 Patent grant