CN110837420A - Resource scheduling method, device, terminal and storage medium - Google Patents

Resource scheduling method, device, terminal and storage medium Download PDF

Info

Publication number
CN110837420A
CN110837420A CN201911102818.3A CN201911102818A CN110837420A CN 110837420 A CN110837420 A CN 110837420A CN 201911102818 A CN201911102818 A CN 201911102818A CN 110837420 A CN110837420 A CN 110837420A
Authority
CN
China
Prior art keywords
event
resource scheduling
target application
abnormal
application
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
CN201911102818.3A
Other languages
Chinese (zh)
Other versions
CN110837420B (en
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201911102818.3A priority Critical patent/CN110837420B/en
Publication of CN110837420A publication Critical patent/CN110837420A/en
Application granted granted Critical
Publication of CN110837420B publication Critical patent/CN110837420B/en
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/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
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The embodiment of the application discloses a resource scheduling method, a resource scheduling device, a terminal and a storage medium, and belongs to the technical field of computers. According to the method and the device, the resource scheduling data can be obtained and analyzed immediately after the target application generates the jamming event, and when the event is the abnormal event caused by scheduling of the operating system, the resource corresponding to the abnormal resource scheduling event is distributed to the target application, so that the main cause of jamming can be rapidly determined after the jamming event occurs to the target application, the corresponding resource is released, the average frame rate and the frame rate stability of the target application are improved, and the running effect of the target application is further improved.

Description

Resource scheduling method, device, terminal and storage medium
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a resource scheduling method, a resource scheduling device, a terminal and a storage medium.
Background
With the increasing development and application of high-performance applications, the high-performance applications installed in the terminal improve the working efficiency of the user and enrich the entertainment life of the user.
In the related art, the hardware resources of the terminal are also required to be higher for high-performance applications. In order to ensure that the high-performance application always has high data computation capability, a person skilled in the art usually binds the main thread of the high-performance application to the high-performance core of the terminal.
However, in some scenarios, applications that have bound the main thread to the high performance core may still experience a stuck phenomenon.
Disclosure of Invention
The embodiment of the application provides a resource scheduling method, a resource scheduling device, a resource scheduling terminal and a resource scheduling storage medium, and can solve the problem that a stuck phenomenon still occurs in an application which binds a main thread to a high-performance core. The technical scheme is as follows:
according to an aspect of the present application, there is provided a resource scheduling method, including:
when a target application generates a stuck event, acquiring resource scheduling data, wherein the resource scheduling data is data for calling resources by the target application in a target time period, and the target time period is a time period of a specified duration before the stuck event;
determining an abnormal resource scheduling event causing the stuck event according to the resource scheduling data;
and when the abnormal resource scheduling event belongs to a system scheduling abnormal event, allocating the resource corresponding to the abnormal resource scheduling event to the target application.
According to another aspect of the present application, there is provided a resource scheduling apparatus, the apparatus including:
the data acquisition module is used for acquiring resource scheduling data when a target application generates a stuck event, wherein the resource scheduling data is data for calling resources in a target time period by the target application, and the target time period is a time period of a specified duration before the stuck event;
the abnormity determining module is used for determining an abnormal resource scheduling event causing the stuck event according to the resource scheduling data;
and the resource allocation module is used for allocating the resources corresponding to the abnormal resource scheduling events to the target application when the abnormal resource scheduling events belong to system scheduling abnormal events.
According to another aspect of the present application, there is provided a terminal including a processor and a memory, where at least one instruction is stored, and the instruction is loaded and executed by the processor to implement the resource scheduling method as provided in the embodiments of the present application.
According to another aspect of the present application, there is provided a computer-readable storage medium having at least one instruction stored therein, the instruction being loaded and executed by a processor to implement a resource scheduling method as provided in the implementations of the present application.
The beneficial effects brought by the technical scheme provided by the embodiment of the application can include:
when a target application running in the terminal is in a stuck event, the terminal acquires resource scheduling data, determines an abnormal resource scheduling event causing the stuck event according to the resource scheduling data, and when the abnormal resource scheduling event is an event caused by scheduling of an operating system, the terminal allocates resources corresponding to the abnormal resource scheduling event to the target application. According to the method and the device, the resource scheduling data can be obtained and analyzed immediately after the target application generates the jamming event, after the abnormal resource scheduling event causing the jamming event is obtained, the terminal can allocate the resource corresponding to the abnormal resource scheduling event to the target application when the event is the abnormal event caused by the scheduling of the operating system, so that the main cause of the jamming can be rapidly determined after the jamming event occurs to the target application, the resource occupied by the cause is obtained, the resource is allocated to the target application, the problem that the target application generates the jamming is rapidly solved from the source, the jamming of the target application is reduced, the average frame rate of the target application is improved, the frame rate stability of the target application is improved, and the running effect of the target application is improved.
Drawings
In order to more clearly describe the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments of the present application will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a block diagram of a terminal according to an exemplary embodiment of the present application;
FIG. 2 is a flowchart of a resource scheduling method according to an exemplary embodiment of the present application;
FIG. 3 is a flowchart of another resource scheduling method provided by another exemplary embodiment of the present application;
FIG. 4 is a schematic diagram of resource scheduling data of an event matched with a low-frequency anomaly template according to the embodiment shown in FIG. 3;
FIG. 5 is a schematic diagram of resource scheduling data of an event matched with a kernel exception template according to the embodiment shown in FIG. 3;
FIG. 6 is a schematic diagram of resource scheduling data of an event matched with an application logic exception template according to the embodiment shown in FIG. 3;
fig. 7 is a block diagram of a resource scheduling apparatus according to an exemplary embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
In the description of the present application, it is to be understood that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. In the description of the present application, it is to be noted that, unless otherwise explicitly specified or limited, the terms "connected" and "connected" are to be interpreted broadly, e.g., as being fixed or detachable or integrally connected; can be mechanically or electrically connected; may be directly connected or indirectly connected through an intermediate. The specific meaning of the above terms in the present application can be understood in a specific case by those of ordinary skill in the art. Further, in the description of the present application, "a plurality" means two or more unless otherwise specified. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
In order to make the solution shown in the embodiments of the present application easy to understand, several terms appearing in the embodiments of the present application will be described below.
A stuck event: refers to an event triggered by the target application. In one possible implementation, the stuck event may be an interrupt. In one possible implementation of the present application, the stuck event may generate a stuck signal simultaneously when it occurs. When a functional module in the system receives a stuck signal, the corresponding functional module can learn the stuck event.
Resource scheduling data: is the data that the target application calls the resource within the target time period. It should be noted that the resource may be at least one of a processor resource, a network resource, a read/write resource (also referred to as an I/O resource), or a storage resource. Wherein the processor resource may be at least one of a processor core size, a processor core number, a processor load, or a processor frequency. The resource scheduling data may reflect the data of the target application scheduling the respective resource from the granularity of the process or thread. For example, the resource scheduling data may reflect, on the granularity of the processes, whether a processor core used by each process on a time axis is a large core or a small core, how often the core of the processor runs, and specifically at which time periods the processes run, wait to run at which time periods, and sleep at which time periods. Similarly, the resource scheduling data can also know the resource scheduling condition of each thread in the granularity of the thread.
Alternatively, in a floor-based application scenario, the resource scheduling data may be sysstrace (English: SystemTrace, Chinese: System tracking) data. It should be noted that, the embodiment of the present application can also obtain other types of resource scheduling data, and the embodiment of the present application does not limit this.
The target time period is as follows: is a period of specified duration before the occurrence of a stuck event. It should be noted that, if the stuck event occurs at time a, the target time period is a time period of a specified duration with time a as the end time. Optionally, the specified duration is a duration with a constant length, and may be a value of 500 milliseconds, 1 second, or 2 seconds, which is not limited in this embodiment of the present application.
An abnormal resource scheduling event: the event which is formed by the most main factors for causing the seizure event. Optionally, the abnormal resource scheduling event is an event when a thread in the target application calls a resource, and the thread may be a main thread (also referred to as a logical thread) of the target application or a thread other than the main thread in the target application.
Alternatively, the abnormal resource scheduling events may be divided into two categories. The first type of exceptional resource scheduling event may be an exceptional event caused by an operating system schedule. In the abnormal resource scheduling event, the operating system causes a stuck event to the improper scheduling of the resource. The second type of abnormal resource scheduling event may be an abnormal event caused by a logical error of the target application itself. In the abnormal resource scheduling event, the logic error of the target application may include problems of deadlock of the main thread, sleep (english: sleep) abnormality, or too long execution time of the main thread. It should be noted that the logic error of the target application may also be another error that can cause a stuck event, and this is not limited in this embodiment of the present application.
The target application comprises the following steps: refers to a designated application that can run in the operating system of the terminal and provide a visual user interface. Wherein the target application may be at least one of a gaming application, a shopping application, an instant messaging application, a blogging application, a mapping and drawing application, a text editing application, a ticketing application, a map navigation application, a video playback application, a live broadcast application, a browser application, a reading application, a music application, a financial payment application, a camera application, a photo beautification program, a smart device control application, a telephony application, a text messaging program, a weather application, a clock program, a system search application, a contacts program, a shared traffic application, a logistics application, a taxi taking application, a take-away application, an attendance card punching application, and a code scanning application.
The game application comprises the following steps: including at least one of a separately packaged gaming application, a gaming application providing launch access through a third party application, and a gaming application integrated in a third party application.
Alternatively, when the gaming application is a stand-alone packaged gaming application, the gaming application may be a separate application, program or client. For example, the game application may be an application installed in a terminal mounting an android system by apk (android package); alternatively, the game application may be an application installed in a terminal having an ios operating system installed therein via an ipa (apple app) installation package.
Alternatively, when the game application is an application that provides access through a third-party application, the game application may be provided access by the specified third-party application. For example, the game application may be a mini program (mini program), a Light App (Light App), a fast App, or the like written by html5(HyperText markup language5, 5 th edition).
Alternatively, the Game applications may be classified according to a Game Playing manner, and for example, may include at least one of a First-person Shooter-type Game application (FPS), a Role-Playing Game application (RPG), an Action Role-Playing Game Application (ARPG), a Multiplayer Online tactical sports Game application (MOBA), a massively Multiplayer Online Game application (MMOG), a cancel-type Game application, a catch-type Game application, a card-type Game application, a music-type Game application, and a place-type Game application.
In one possible implementation, when the gaming application is a massively multiplayer online class gaming application, MMOG, the MMOG may include: at least one of a policy-like Massively Multiplayer online Game application (MMOSLG), an Adventure-like Massively Multiplayer online Game application (MMOAVG), a simulation-like Massively Multiplayer online Game application MMOSG, a sports-like Massively Multiplayer online Game application MMOSPT, a racing-like Massively Multiplayer online Game application MMORCG and a role-playing Massively Multiplayer online Game application MMORPG.
In one possible implementation, the application that provides access via the third-party application can be used without downloading an installation package, and accordingly, does not need to be uninstalled when the application is not needed. It should be noted that, when the application is used for the first time, an entry is provided through a designated third-party application, and in a subsequent use process, a user may create a desktop launch icon for the application, and directly launch the application through the desktop launch icon. The third-party application may be at least one of the target applications, or may be an application such as an application market or an application store.
Alternatively, when the game application is a game application integrated in a third-party application, the game may be started by a designated start button or start operation while the third-party application is running. The game does not need to be independently installed and uninstalled, and both the configuration file and the resource file for running the game can be integrated in a third-party application.
For example, the resource scheduling method shown in the embodiment of the present application may be applied to a terminal running a target application, where the terminal has a display screen and a resource scheduling function for preventing jamming. The terminal may include a mobile phone, a tablet computer, a laptop computer, a desktop computer, a computer all-in-one machine, a server, a workstation, a television, a set-top box, smart glasses, a smart watch, a digital camera, an MP4 player terminal, an MP5 player terminal, a learning machine, a point-and-read machine, an electronic book, an electronic dictionary, a vehicle-mounted terminal, a Virtual Reality (VR) player terminal, an Augmented Reality (AR) player terminal, or the like.
Referring to fig. 1, fig. 1 is a block diagram of a terminal according to an exemplary embodiment of the present application, and as shown in fig. 1, the terminal includes a processor 120, a memory 140, and a display component 160, where the memory 140 stores at least one instruction, and the instruction is loaded and executed by the processor 120 to implement a resource scheduling method according to various method embodiments of the present application. Optionally, the display component 160 is used to display image frames resulting from rendering image data from the memory 140 by the processor 120.
In the present application, the terminal 100 is an electronic device having a target application running thereon. When a target application in the terminal 100 has a stuck event, the terminal 100 can obtain resource scheduling data, where the resource scheduling data is data for the target application to call resources in a target time period, and the target time period is a time period of a specified duration before the stuck event occurs; determining an abnormal resource scheduling event causing the stuck event according to the resource scheduling data; and when the abnormal resource scheduling event is an abnormal event caused by scheduling of an operating system, allocating the resource corresponding to the abnormal resource scheduling event to the target application.
Processor 120 may include one or more processing cores. The processor 120 connects various parts within the overall terminal 100 using various interfaces and lines, and performs various functions of the terminal 100 and processes data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 140 and calling data stored in the memory 140. Optionally, the processor 120 may be implemented in at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA). The processor 120 may integrate one or more of a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), a modem, and the like. Wherein, the CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for rendering and drawing the content required to be displayed by the display screen; the modem is used to handle wireless communications. It is understood that the modem may not be integrated into the processor 120, but may be implemented by a single chip.
The Memory 140 may include a Random Access Memory (RAM) or a Read-Only Memory (ROM). Optionally, the memory 140 includes a non-transitory computer-readable medium. The memory 140 may be used to store instructions, programs, code sets, or instruction sets. The memory 140 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing various method embodiments described below, and the like; the storage data area may store data and the like referred to in the following respective method embodiments.
The display unit 160 is used for displaying the image frames temporarily stored in the buffer queue. The image frames in the buffer queue are rendered by the processor 120 from the data acquired from the memory 140, and when the processor 120 completes rendering of the image frames, the processor 120 adds the rendered image frames to the buffer queue. The display component 160 extracts the image frames from the buffer queue for display according to the first-in first-out rule.
Alternatively, the display component 160 may be a display screen, a projection screen component, a projection component, or a holographic display component, which is not limited in this application.
Referring to fig. 2, fig. 2 is a flowchart of a resource scheduling method according to an exemplary embodiment of the present application. The resource scheduling method can be applied to the terminal shown above. In fig. 2, the resource scheduling method includes:
step 210, when the target application has a stuck event, acquiring resource scheduling data, where the resource scheduling data is data for the target application to call resources in a target time period, and the target time period is a time period of a specified duration before the stuck event occurs.
In the embodiment of the application, the terminal can install and run the target application. When the target application is running, the image data of the target application can be rendered by a processor in the terminal, and then the image frame resulting from the completion of the rendering can be displayed in the screen. Generally, when the terminal is capable of displaying 24 frames of images per second, the user can feel that the picture displayed by the target application is relatively smooth. However, when the image frames displayed by the target application are less than 24 frames per second, the user will feel stuck, i.e. the target application has stuck.
When the target application is in a stuck event, the terminal acquires resource scheduling data. In one possible implementation, the terminal can obtain the resource scheduling data by a system performance analysis tool. Optionally, the system performance analysis tool may be embedded in the operating system, developed by an operating system deep developer, or provided by a third-party service provider.
Optionally, the operating system may further be capable of obtaining the resource scheduling data and storing the resource scheduling data locally. In detail, since the resource scheduling data is acquired and stored in the memory in real time, the storage time is limited and the resource scheduling data is periodically cleaned. Therefore, the resource scheduling data acquired from the memory is stored in the nonvolatile computer readable storage device according to the embodiment of the present application.
Step 220, according to the resource scheduling data, determining an abnormal resource scheduling event causing the stuck event.
In the embodiment of the application, the terminal can also analyze the resource scheduling data to obtain an abnormal resource scheduling event causing a stuck event, which is contained in the data. It should be noted that the resource scheduling data may include the situation of scheduling resources by each object within the target duration. The object may be a process in the target application, or the object may also be a thread in the target application, which is not limited in this embodiment of the present application.
It should be noted that the terminal has the capability of identifying an abnormal resource scheduling event causing a stuck event. In a possible mode, a condition for judging the abnormal resource scheduling event is set in the terminal, and the terminal judges the event in the resource scheduling data according to the condition to finally obtain the abnormal resource scheduling event. Optionally, the abnormal resource scheduling event may be one event or a plurality of events.
For example, if the resource scheduling data is resource scheduling data of the main thread a, the resource recovery thread B, the rendering thread C1, the rendering thread C2, and the burst thread D of the target application within 1 second, the resource scheduling data may provide a case where the above five threads schedule various resources within 1 second.
And step 230, when the abnormal resource scheduling event is an abnormal event caused by the scheduling of the operating system, allocating the resource corresponding to the abnormal resource scheduling event to the target application.
In the embodiment of the application, the terminal can further judge the attribute of the abnormal resource scheduling event. When the terminal determines that the abnormal resource scheduling event is the abnormal event caused by the operating system, the terminal can allocate the resource corresponding to the abnormal resource scheduling event to the target application. It should be noted that, in the running process of the target application, it is ensured that the main thread has sufficient resources to run, that is, it is greatly possible to ensure that the whole running of the target application is smooth and not stuck. After the terminal allocates the resources corresponding to the abnormal resource scheduling event to the target application, the target application can allocate the resources to the main thread to ensure the smoothness of the target application in operation.
In summary, according to the resource scheduling method provided in this embodiment, when a target application running in a terminal has a stuck event, the terminal obtains resource scheduling data, and determines an abnormal resource scheduling event causing the stuck event according to the resource scheduling data, and when the abnormal resource scheduling event is an event caused by scheduling of an operating system, the terminal allocates a resource corresponding to the abnormal resource scheduling event to the target application. According to the method and the device, the resource scheduling data can be obtained and analyzed immediately after the target application generates the jamming event, after the abnormal resource scheduling event causing the jamming event is obtained, the terminal can allocate the resource corresponding to the abnormal resource scheduling event to the target application when the event is the abnormal event caused by the scheduling of the operating system, so that the main cause of the jamming can be rapidly determined after the jamming event occurs to the target application, the resource occupied by the cause is obtained, the resource is allocated to the target application, the problem that the target application generates the jamming is rapidly solved from the source, the jamming of the target application is reduced, the average frame rate of the target application is improved, the frame rate stability of the target application is improved, and the running effect of the target application is improved.
Based on the scheme disclosed in the previous embodiment, the terminal can also perform corresponding resource scheduling according to the difference of the specific types of the abnormal resource scheduling causing the stuck event, and please refer to the following embodiments for details.
Referring to fig. 3, fig. 3 is a flowchart of another resource scheduling method according to another exemplary embodiment of the present application. The resource scheduling method can be applied to the terminal shown in fig. 1. In fig. 3, the resource scheduling method includes:
step 311, recording a first time and a second time, where the first time is a time when the rendering of the first image frame is completed, the second time is a time when the rendering of the second image frame is completed, and the first image frame and the second image frame are adjacent image frames in a display image frame queue of the target application.
Step 312, a target rendering duration is obtained, where the target rendering duration is a duration of a time period between the second time and the first time.
And 313, when the target rendering duration is greater than the preset duration threshold, confirming that the target application is blocked and acquiring resource scheduling data.
In the embodiment of the application, the terminal can determine whether the jamming event is generated in the terminal in a finer mode. As a possible implementation, the terminal is able to record the first time and the second time. It should be noted that the terminal can determine the time when each image frame in the target application is completely rendered. The first image frame and the second image frame are adjacent image frames in a display image frame queue. When the terminal displays the image, the image frames are displayed according to the sequence of the image frame arrangement in the image frame display queue.
For example, if the target application renders the image frame p1, the image frame p2, and the image frame p3 consecutively, the terminal can record the rendering completion time of the image frame p1, the rendering completion time of the image frame p2, and the rendering completion time of the image frame p3, respectively, for details, see the example shown in table one.
Watch 1
Image frame name Image frame p1 Image frame p2 Image frame p3
Time of finishing rendering 21 hour, 22 minutes, 1.322 seconds 21 hours and 22 minutes and 1.371 seconds 21 hour, 22 minutes and 1.461 seconds
In the example shown in table one, if the time at which the rendering of the image frame p1 is completed is the first time and the time at which the rendering of the image frame p2 is completed is the second time, the target rendering duration is 0.049 seconds (i.e., 49 milliseconds). If the time at which the rendering of the image frame p2 is completed is the first time and the time at which the rendering of the image frame p3 is completed is the second time, the target rendering duration is 0.09 seconds (i.e., 90 milliseconds). It should be noted that the image frame corresponding to each of the first time and the second time needs to be an adjacent image frame in the display image frame queue of the target application. If the image frame corresponding to the first time is p1, the image frame corresponding to the second time is required to be p 2.
In the embodiment of the present application, a preset duration threshold may also be preset, and the preset duration threshold may be a constant value. For example, the preset duration threshold may be 65 ms, 50 ms, or 80 ms, which is not limited in the embodiment of the present application. Taking the preset time length threshold as 65 milliseconds as an example, if the time of completing rendering the image frame p2 is the first time and the time of completing rendering the image frame p3 is the second time, the terminal confirms that the target application has a stuck event and acquires the resource scheduling data.
Step 321, comparing the candidate resource scheduling event in the resource scheduling data with the abnormal scheduling template.
Step 322, when the candidate resource scheduling event matches the abnormal scheduling template, determining the candidate resource scheduling event as an abnormal resource scheduling event.
It should be noted that, after the terminal acquires the resource scheduling data, the terminal can compare the candidate resource scheduling event in the resource scheduling data with the abnormal scheduling template. If the resource scheduling data includes resource scheduling data of a main thread a, a resource recovery thread B, a rendering thread C1, a rendering thread C2 and a burst thread D of a target application, and each thread includes 3 events including a run-time event, a processor occupation frequency event and a processor occupation time period event, the resource scheduling data includes 15 candidate resource scheduling events in total.
Taking this as an example, when there is an event matching with the abnormal scheduling template in the 15 candidate resource scheduling events, the terminal determines the matching candidate resource scheduling event as an abnormal resource scheduling event.
In the embodiment of the application, the exception scheduling template comprises a low-frequency exception template, a core occupation exception template and an application logic exception template. The exception scheduling template is used for indicating that the average frequency of the processor core bound by the target application in the stuck time interval is lower than the target frequency; the core occupation exception template is used for indicating that the processor core bound by the target application is occupied by the burst thread of the target application; and the application logic exception template is used for indicating that the main thread of the target application has logic exception.
In the embodiment of the application, the terminal can execute corresponding operation according to the specific type of the candidate resource scheduling event. Optionally, the terminal may perform step 330, step 340, or steps 351 to 353, and the execution procedure of the relevant steps is described as follows:
and step 330, when the abnormal resource scheduling event is an event matched with the low-frequency abnormal template, raising the frequency of the processor core bound by the target application to the maximum frequency.
It should be noted that the low-frequency exception template is an event in which the average frequency of the processor cores bound by the target application in the stuck period is lower than the target frequency. The time interval of the stuck event is the time interval between the first time and the second time when the stuck event occurs. The target frequency may be the highest frequency of the processor core bound by the target application, or may be close to one of the highest frequencies, which is not limited in this embodiment of the application. In one particular example, if the highest frequency of the processor cores bound by the target application is 2.2GHz, then the target frequency may be 2 GHz.
In the embodiment of the application, when the abnormal resource scheduling event is an event matched with the low-frequency abnormal template, the terminal can raise the frequency of the processor core bound by the target application to the maximum frequency, that is, if the maximum frequency of the processor core bound by the target application is 2.2GHz, the terminal can adjust the frequency of the processor core to 2 GHz.
Referring to fig. 4, fig. 4 is a schematic diagram of resource scheduling data of an event matched with a low frequency exception template according to the embodiment shown in fig. 3. In FIG. 4, horizontal axis 410 is a time axis and vertical axis 420 is the frequency of processor cores bound by the main thread of the target application. It should be noted that, in this scenario, the frequency of the processor core bound by the target application in the stuck period (i.e., the period from point 4A to point 4B) is not changed, and is 1.8 GHz. On the time axis 410, a period 411 represents a period in which the main thread of the target application is in operation, and a period 412 represents a period in which the main thread of the target application is in sleep.
And step 340, when the abnormal resource scheduling event is an event matched with the occupied core abnormal template, binding the burst thread to the processor cores except the processor core bound by the target application.
It should be noted that the core occupation exception template is used to indicate that the processor core bound by the target application is preempted by the burst thread of the target application. Wherein the burst thread is a thread in the target application except the main thread.
Referring to fig. 5, fig. 5 is a schematic diagram of resource scheduling data of an event matching with a core exception template according to the embodiment shown in fig. 3. In fig. 5, the horizontal axis 510 is a time axis, and the vertical axis 520 is a case where an exception thread of the target application runs in a stuck period (i.e., a period from point 4A to point 4B). Wherein, the 511 time period represents that the exception thread is in a running state, and the 512 time period represents that the exception thread is in a pending state. Because the exception thread is in all threads in the target thread, the operation time length in the pause time period is longest. Therefore, the exception thread is determined as a burst thread in the embodiment of the present application.
As can be seen from the content shown in fig. 5, the exception thread continues to run during the stuck period and preempts the processor core bound by the target application, resulting in stuck. Alternatively, in one possible implementation, the terminal may determine the thread having the longest running time in the stuck period, except for the main thread, as the exception thread.
It should be noted that, in another possible implementation, the processor core bound by the target application is the processor core bound by the main thread of the target application. The terminal can also judge how to process the application of the preemption thread according to the identification of the preemption thread when the processor core is applied for occupation by the preemption thread. Because the operating system cannot know the functions of all threads in the application program, the operating system can continuously maintain a blacklist in the running process of the target application, and the blacklist is used for storing the identification of the preemptive thread causing the seizure. And when the identifier of the preempting thread is in the blacklist, the operating system allocates the preempting thread to other processor cores of the terminal for processing. When the identifier of the preemption thread is not in the blacklist, the terminal can allocate the target working period with the limited duration for the preemption thread. Wherein the duration of the target working period is less than the target rendering duration.
For example, when the target application is a gaming application, the main thread of the gaming application is bound to a processor core at a frequency of 2.4 GHz. When a preempting thread L in the game application preempts the processor core, the operating system acquires the identifier of the processor core L and checks whether the preempting thread L is in a blacklist. When the preemption thread L is in the blacklist, the operating system prohibits the preemption thread L from occupying the thread of 2.4GHz, and binds the preemption thread L on the other processor cores with 1.8GHz or reduced processing capability. When the preempting thread L is not in the blacklist, the operating system allocates a target working period for the preempting thread L. It should be noted that the duration of the target working period is less than the target rendering duration. If the target rendering duration is 30 ms, the duration of the target working period allocated by the operating system to the preemption thread L will be less than 30 ms. Because the duration of the processor core bound by the main thread of the game application is limited by the preemption thread, when the processor core bound by the main thread is preempted by the preemption thread, the purpose of preliminary jam prevention can be achieved by limiting the duration of the preemption core, meanwhile, the operation of the preemption thread can be ensured, and the operation efficiency of the target application is comprehensively improved.
Step 351, when the abnormal resource scheduling event is an event matched with the application logic abnormal template, sending the resource scheduling data and the abnormal resource scheduling event to a manufacturer server, wherein the manufacturer server is a server provided by a developer of the target application.
Step 352, receiving the logic update resource package fed back by the vendor server.
And step 353, updating the target application according to the logic updating resource package.
It should be noted that, when the abnormal resource scheduling event is an event matched with the application logic abnormality template, the terminal can send the resource scheduling data and the abnormal resource scheduling event to the vendor server. In one possible scenario, the abnormal resource scheduling event may include a deadlock of the main thread, a sleep exception, or an excessively long execution time of the main thread.
When the abnormal resource scheduling event is an event matched with the application logic abnormal template, the reason for causing the target application to be stuck is that the logic of the target application is wrong. Therefore, when the problem is found, the resource scheduling market and the abnormal resource scheduling event are immediately sent to the manufacturer server, so that the manufacturer server searches the corresponding logic updating resource packet. And then, the terminal receives the logic updating resource packet fed back by the manufacturer server.
In a possible mode, the terminal can directly load the logic updating resource package in the running process of the target application so as to realize the noninductive upgrading without interfering the user to use the target application. In this upgrade approach, the target application may be a client developed based on electron technology.
In another possible mode, the terminal can load the logic update resource package to complete the update when the target application is confirmed to exit from the current operation. Based on the updating mode, the target application can overcome the logic error of the target application in the subsequent running process, improve the fluency of the target application and quickly start when the target application is started next time.
Referring to fig. 6, fig. 6 is a schematic diagram of resource scheduling data of an event matching an application logic exception template according to the embodiment shown in fig. 3. In fig. 6, the horizontal axis 610 is a time axis, the length of the stuck period is 63.808 milliseconds (the time period between time 611 and time 613), time 611 is the time at which the main thread completes rendering the first image frame, time 612 is the time at which the main thread completes rendering the second image frame, and time 613 is the time at which the main thread completes rendering the third image frame. Time 621 is the time when the second image frame is requested to be rendered and time 622 is the time when the third image frame is requested to be rendered.
Based on the scenario shown in fig. 6, the time period 611 of the accumulated operation of the target thread in the stuck period is greater than the allowed logic operation time threshold, and therefore, the terminal determines the abnormal resource scheduling event as an event matching the application logic abnormality template.
In summary, the resource scheduling method provided in this embodiment can obtain the target rendering duration by calculating the duration of the time period between the second time and the first time according to the first time at which the rendering of the first image frame is completed and the second time at which the rendering of the second image frame is completed, and when the target rendering duration is greater than the preset duration threshold, confirm that the target application has a stuck event and obtain resource scheduling data, so that the sensitivity of detecting the stuck event by the terminal is achieved, and the capability of the terminal to perform resource scheduling again before the stuck event is sensed by the user is improved.
The resource scheduling method provided by the embodiment can also compare the candidate resource scheduling event in the resource scheduling data with the abnormal scheduling template, and when the candidate resource scheduling event is matched with the abnormal scheduling template, the candidate resource scheduling event is determined as the abnormal resource scheduling event, so that the speed of determining the cause of the stuck event is increased, and the speed of solving the stuck event by the terminal is increased.
The resource scheduling method provided by this embodiment can also determine in detail whether the frequency of the processor core bound by the target application is insufficient or whether a burst thread preempts the processor core bound by the target application when the stuck event is caused by an abnormal event caused by scheduling of the operating system. And when the frequency of the processor core bound by the target application is insufficient, pulling up the frequency of the processor core bound by the target application. When the burst thread occupies the processor core bound by the target application, the burst thread is bound to the processor cores except the processor core bound by the target application for processing, so that the speed of solving the jamming of the terminal is increased in a targeted manner.
The following are embodiments of the apparatus of the present application that may be used to perform embodiments of the method of the present application. For details which are not disclosed in the embodiments of the apparatus of the present application, reference is made to the embodiments of the method of the present application.
Referring to fig. 7, fig. 7 is a block diagram of a resource scheduling apparatus according to an exemplary embodiment of the present application. The resource scheduling means may be implemented as all or part of the terminal by software, hardware or a combination of both. The device includes:
a data obtaining module 710, configured to obtain resource scheduling data when a target application has a stuck event, where the resource scheduling data is data for the target application to call a resource in a target time period, and the target time period is a time period of a specified duration before the stuck event occurs;
an exception determining module 720, configured to determine, according to the resource scheduling data, an exception resource scheduling event that causes the stuck event;
and the resource allocation module 730 is configured to, when the abnormal resource scheduling event belongs to a system scheduling abnormal event, allocate a resource corresponding to the abnormal resource scheduling event to the target application.
In an optional embodiment, the data obtaining module 710 is configured to record a first time and a second time, where the first time is a time when a first image frame is rendered, and the second time is a time when a second image frame is rendered, and the first image frame and the second image frame are adjacent image frames in a display image frame queue of the target application; acquiring a target rendering duration, wherein the target rendering duration is the duration of a time period between the second moment and the first moment; and when the target rendering duration is greater than a preset duration threshold, confirming that the target application generates the stuck event and acquiring resource scheduling data.
In an optional embodiment, the exception determining module 720 is configured to compare the candidate resource scheduling event in the resource scheduling data with an exception scheduling template; and when the candidate resource scheduling event is matched with the abnormal scheduling template, determining the candidate resource scheduling event as the abnormal resource scheduling event.
In an optional embodiment, the exception scheduling template referred to by the apparatus includes a low-frequency exception template, a core occupation exception template and an application logic exception template, wherein the exception scheduling template is used for indicating that the average frequency of the processor cores bound by the target application in a stuck period is lower than a target frequency; the core occupation exception template is used for indicating that the processor core bound by the target application is occupied by the burst thread of the target application; and the application logic exception template is used for indicating that the main thread of the target application has logic exception.
In an optional embodiment, the exception determining module 720 is configured to raise the frequency of the processor core bound by the target application to a maximum frequency when the exception resource scheduling event is an event matching the low-frequency exception template; and/or binding the burst thread to a processor core except the processor core bound by the target application when the abnormal resource scheduling event is an event matched with the core occupying abnormality template.
In an optional embodiment, the processor core bound to the target application involved in the apparatus is a processor core bound to a main thread of the target application, and the apparatus further includes an identifier obtaining module, a core allocating module, and a time period allocating module, where the identifier obtaining module is configured to obtain an identifier of the preemption thread when the processor core bound to the main thread of the target application is occupied by the preemption thread application; the core allocation module is used for allocating the preemption thread to other processor cores of the terminal for processing when the identification of the preemption thread is in a blacklist; and the time interval distribution module is used for distributing a target working time interval on a processor core bound by a main thread of the target application for the preemptive thread when the identifier of the preemptive thread is not in a blacklist, wherein the duration of the target working time interval is less than the target rendering duration.
In an optional embodiment, the apparatus further includes a data sending module, an update package receiving module, and an application updating module, where the data sending module is configured to send the resource scheduling data and the abnormal resource scheduling event to a vendor server when the abnormal resource scheduling event is an event matching the application logic abnormality template, and the vendor server is a server provided by a developer of the target application; the update package receiving module is used for receiving the logic update resource package fed back by the manufacturer server; and the application updating module is used for updating the target application according to the logic updating resource packet.
In summary, the resource scheduling apparatus provided in this embodiment can obtain the target rendering duration by calculating the duration of the time period between the second time and the first time according to the first time at which the rendering of the first image frame is completed and the second time at which the rendering of the second image frame is completed, and when the target rendering duration is greater than the preset duration threshold, confirm that the target application has a stuck event and obtain resource scheduling data, so that the sensitivity of detecting the stuck event by the terminal is achieved, and the capability of the terminal to perform resource scheduling again before the stuck event which is sensed by the user occurs is improved.
The resource scheduling device provided by the embodiment can also compare the candidate resource scheduling event in the resource scheduling data with the abnormal scheduling template, and when the candidate resource scheduling event is matched with the abnormal scheduling template, the candidate resource scheduling event is determined as the abnormal resource scheduling event, so that the speed of determining the cause of the stuck event is increased, and the speed of solving the stuck event by the terminal is increased.
The resource scheduling apparatus provided in this embodiment can also determine in detail whether the frequency of the processor core bound by the target application is insufficient or whether a burst thread preempts the processor core bound by the target application when the stuck event is caused by an abnormal event caused by scheduling by the operating system. And when the frequency of the processor core bound by the target application is insufficient, pulling up the frequency of the processor core bound by the target application. When the burst thread occupies the processor core bound by the target application, the burst thread is bound to the processor cores except the processor core bound by the target application for processing, so that the speed of solving the jamming of the terminal is increased in a targeted manner.
The present application further provides a computer-readable medium, where at least one instruction is stored, and the at least one instruction is loaded and executed by the processor to implement the resource scheduling method according to the above embodiments.
It should be noted that: in the resource scheduling apparatus provided in the foregoing embodiment, when executing the resource scheduling method, only the division of the functional modules is illustrated, and in practical applications, the function allocation may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the resource scheduling apparatus and the resource scheduling method provided in the foregoing embodiments belong to the same concept, and specific implementation processes thereof are described in the method embodiments for details, which are not described herein again.
The above-mentioned serial numbers of the embodiments of the present application are merely for description and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only exemplary of the implementation of the present application and is not intended to limit the present application, and any modifications, equivalents, improvements, etc. made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (10)

1. A method for scheduling resources, the method comprising:
when a target application generates a stuck event, acquiring resource scheduling data, wherein the resource scheduling data is data for calling resources by the target application in a target time period, and the target time period is a time period of a specified duration before the stuck event;
determining an abnormal resource scheduling event causing the stuck event according to the resource scheduling data;
and when the abnormal resource scheduling event is an abnormal event caused by scheduling of an operating system, allocating the resource corresponding to the abnormal resource scheduling event to the target application.
2. The method of claim 1, wherein obtaining resource scheduling data when a target application is stuck event comprises:
recording a first time and a second time, wherein the first time is the time when a first image frame is rendered, the second time is the time when a second image frame is rendered, and the first image frame and the second image frame are adjacent image frames in a display image frame queue of the target application;
acquiring a target rendering duration, wherein the target rendering duration is the duration of a time period between the second moment and the first moment;
and when the target rendering duration is greater than a preset duration threshold, confirming that the target application generates the stuck event and acquiring resource scheduling data.
3. The method of claim 2, wherein determining the anomalous resource scheduling event that caused the stuck event based on the resource scheduling data comprises:
comparing the candidate resource scheduling event in the resource scheduling data with an abnormal scheduling template;
and when the candidate resource scheduling event is matched with the abnormal scheduling template, determining the candidate resource scheduling event as the abnormal resource scheduling event.
4. The method of claim 3, wherein the exception scheduling templates include a low frequency exception template, a core exception template, and an application logic exception template,
wherein the exception scheduling template is used for indicating that the average frequency of the processor cores bound by the target application in a stuck period is lower than a target frequency; the core occupation exception template is used for indicating that the processor core bound by the target application is occupied by the burst thread of the target application; and the application logic exception template is used for indicating that the main thread of the target application has logic exception.
5. The method according to claim 4, wherein when the abnormal resource scheduling event is an abnormal event caused by scheduling of an operating system, allocating a resource corresponding to the abnormal resource scheduling event to the target application comprises:
when the abnormal resource scheduling event is an event matched with the low-frequency abnormal template, raising the frequency of the processor core bound by the target application to the maximum frequency;
and/or the presence of a gas in the gas,
when the abnormal resource scheduling event is an event matched with the core occupying abnormal template, the burst thread is bound to the processor cores except the processor core bound by the target application.
6. The method of claim 4, wherein the target application bound processor core is a main thread bound processor core of the target application, the method further comprising:
when a processor core bound by a main thread of the target application is applied to be occupied by a preemption thread, acquiring an identifier of the preemption thread;
when the identifier of the preemption thread is in the blacklist, allocating the preemption thread to other processor cores of the terminal for processing;
and when the identifier of the preemption thread is not in the blacklist, allocating a target working period on a processor core bound by the main thread of the target application for the preemption thread, wherein the duration of the target working period is less than the target rendering duration.
7. The method of claim 4, further comprising:
when the abnormal resource scheduling event is an event matched with the application logic abnormal template, sending the resource scheduling data and the abnormal resource scheduling event to a manufacturer server, wherein the manufacturer server is a server provided by a developer of the target application;
receiving a logic updating resource packet fed back by the manufacturer server;
and updating the target application according to the logic updating resource packet.
8. An apparatus for scheduling resources, the apparatus comprising:
the data acquisition module is used for acquiring resource scheduling data when a target application generates a stuck event, wherein the resource scheduling data is data for calling resources in a target time period by the target application, and the target time period is a time period of a specified duration before the stuck event;
the abnormity determining module is used for determining an abnormal resource scheduling event causing the stuck event according to the resource scheduling data;
and the resource allocation module is used for allocating the resources corresponding to the abnormal resource scheduling events to the target application when the abnormal resource scheduling events belong to system scheduling abnormal events.
9. A terminal, characterized in that the terminal comprises a processor, a memory connected to the processor, and program instructions stored on the memory, which when executed by the processor implement the resource scheduling method according to any one of claims 1 to 7.
10. A computer readable storage medium having stored thereon program instructions which, when executed by a processor, implement the resource scheduling method of any one of claims 1 to 7.
CN201911102818.3A 2019-11-12 2019-11-12 Resource scheduling method, device, terminal and storage medium Active CN110837420B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911102818.3A CN110837420B (en) 2019-11-12 2019-11-12 Resource scheduling method, device, terminal and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911102818.3A CN110837420B (en) 2019-11-12 2019-11-12 Resource scheduling method, device, terminal and storage medium

Publications (2)

Publication Number Publication Date
CN110837420A true CN110837420A (en) 2020-02-25
CN110837420B CN110837420B (en) 2022-11-15

Family

ID=69576451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911102818.3A Active CN110837420B (en) 2019-11-12 2019-11-12 Resource scheduling method, device, terminal and storage medium

Country Status (1)

Country Link
CN (1) CN110837420B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111343275A (en) * 2020-03-02 2020-06-26 北京奇艺世纪科技有限公司 Resource scheduling method and system
CN111538575A (en) * 2020-04-07 2020-08-14 北京达佳互联信息技术有限公司 Resource scheduling system, method, device, equipment and medium
CN112783660A (en) * 2021-02-08 2021-05-11 腾讯科技(深圳)有限公司 Resource processing method and device in virtual scene and electronic equipment
CN116450363A (en) * 2023-06-13 2023-07-18 荣耀终端有限公司 Resource scheduling method and electronic equipment

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130042250A1 (en) * 2011-05-13 2013-02-14 Samsung Electronics Co., Ltd. Method and apparatus for improving application processing speed in digital device
US20160077876A1 (en) * 2013-04-23 2016-03-17 Beijing Qihoo Technology Company Limited Method and apparatus for optimizing running of browser
CN107133092A (en) * 2017-05-24 2017-09-05 努比亚技术有限公司 Multi-thread synchronization processing method, terminal and computer-readable recording medium
US20180095800A1 (en) * 2016-09-30 2018-04-05 Netease (Hangzhou) Network Co., Ltd. Method and device for allocating core resources of a multi-core cpu
CN108427618A (en) * 2018-03-09 2018-08-21 北京小米移动软件有限公司 Interim card state determines method, apparatus and computer readable storage medium
CN108446199A (en) * 2017-02-16 2018-08-24 阿里巴巴集团控股有限公司 A kind of detection method and device using interim card
CN108763012A (en) * 2018-03-13 2018-11-06 广东欧珀移动通信有限公司 Interim card information acquisition method, device and terminal
CN108776624A (en) * 2018-05-29 2018-11-09 北京小米移动软件有限公司 Determine the method, apparatus and storage medium of terminal interim card reason
CN109032793A (en) * 2018-07-11 2018-12-18 Oppo广东移动通信有限公司 Method, apparatus, terminal and the storage medium of resource distribution
CN109324946A (en) * 2018-09-10 2019-02-12 天津字节跳动科技有限公司 Operational monitoring method, apparatus, electronic equipment and computer readable storage medium
CN109324878A (en) * 2018-09-20 2019-02-12 郑州云海信息技术有限公司 A kind of control method and relevant device of process CPU usage
CN109343997A (en) * 2018-10-31 2019-02-15 Oppo广东移动通信有限公司 Caton detection method, device, terminal and storage medium
CN109445930A (en) * 2018-05-30 2019-03-08 Oppo广东移动通信有限公司 Program optimization method, device, terminal and storage medium

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130042250A1 (en) * 2011-05-13 2013-02-14 Samsung Electronics Co., Ltd. Method and apparatus for improving application processing speed in digital device
US20160077876A1 (en) * 2013-04-23 2016-03-17 Beijing Qihoo Technology Company Limited Method and apparatus for optimizing running of browser
US20180095800A1 (en) * 2016-09-30 2018-04-05 Netease (Hangzhou) Network Co., Ltd. Method and device for allocating core resources of a multi-core cpu
CN108446199A (en) * 2017-02-16 2018-08-24 阿里巴巴集团控股有限公司 A kind of detection method and device using interim card
CN107133092A (en) * 2017-05-24 2017-09-05 努比亚技术有限公司 Multi-thread synchronization processing method, terminal and computer-readable recording medium
CN108427618A (en) * 2018-03-09 2018-08-21 北京小米移动软件有限公司 Interim card state determines method, apparatus and computer readable storage medium
CN108763012A (en) * 2018-03-13 2018-11-06 广东欧珀移动通信有限公司 Interim card information acquisition method, device and terminal
CN108776624A (en) * 2018-05-29 2018-11-09 北京小米移动软件有限公司 Determine the method, apparatus and storage medium of terminal interim card reason
CN109445930A (en) * 2018-05-30 2019-03-08 Oppo广东移动通信有限公司 Program optimization method, device, terminal and storage medium
CN109032793A (en) * 2018-07-11 2018-12-18 Oppo广东移动通信有限公司 Method, apparatus, terminal and the storage medium of resource distribution
CN109324946A (en) * 2018-09-10 2019-02-12 天津字节跳动科技有限公司 Operational monitoring method, apparatus, electronic equipment and computer readable storage medium
CN109324878A (en) * 2018-09-20 2019-02-12 郑州云海信息技术有限公司 A kind of control method and relevant device of process CPU usage
CN109343997A (en) * 2018-10-31 2019-02-15 Oppo广东移动通信有限公司 Caton detection method, device, terminal and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李秋婷: "面向安卓应用的崩溃信息线上分析系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111343275A (en) * 2020-03-02 2020-06-26 北京奇艺世纪科技有限公司 Resource scheduling method and system
CN111538575A (en) * 2020-04-07 2020-08-14 北京达佳互联信息技术有限公司 Resource scheduling system, method, device, equipment and medium
CN111538575B (en) * 2020-04-07 2023-11-14 北京达佳互联信息技术有限公司 Resource scheduling system, method, device, equipment and medium
CN112783660A (en) * 2021-02-08 2021-05-11 腾讯科技(深圳)有限公司 Resource processing method and device in virtual scene and electronic equipment
CN112783660B (en) * 2021-02-08 2024-05-07 腾讯科技(深圳)有限公司 Resource processing method and device in virtual scene and electronic equipment
CN116450363A (en) * 2023-06-13 2023-07-18 荣耀终端有限公司 Resource scheduling method and electronic equipment
CN116450363B (en) * 2023-06-13 2023-11-14 荣耀终端有限公司 Resource scheduling method and electronic equipment

Also Published As

Publication number Publication date
CN110837420B (en) 2022-11-15

Similar Documents

Publication Publication Date Title
CN110837420B (en) Resource scheduling method, device, terminal and storage medium
CN109582463B (en) Resource allocation method, device, terminal and storage medium
CN109032793B (en) Resource allocation method, device, terminal and storage medium
CN108646938B (en) Configuration method and device of touch screen, terminal and storage medium
CN110795056B (en) Method, device, terminal and storage medium for adjusting display parameters
CN109144649B (en) Icon display method and device, terminal and storage medium
CN110418151B (en) Bullet screen information sending and processing method, device, equipment and medium in live game
US9244993B1 (en) Management of application state data
CN108721898B (en) Frame rate determination method and apparatus, storage medium, and electronic apparatus
CN109445941B (en) Method, device, terminal and storage medium for configuring processor performance
US20230326115A1 (en) Bullet screen comment display method and apparatus, bullet screen comment sending method and apparatus, computer device, computer-readable storage medium, and computer program product
CN110413347B (en) Advertisement processing method and device in application program, storage medium and terminal
CN110955499B (en) Processor core configuration method, device, terminal and storage medium
CN112473144A (en) Game resource data processing method and device
CN108737645A (en) The reminding method and device and storage medium and terminal of message
CN110647366B (en) Method, device, terminal and storage medium for processing blocking
CN111124668A (en) Memory release method and device, storage medium and terminal
CN109842727B (en) Touch signal reporting method and device, terminal and storage medium
CN116546228B (en) Plug flow method, device, equipment and storage medium for virtual scene
CN108845733B (en) Screen capture method, device, terminal and storage medium
CN110543384B (en) Memory write-back method, device, terminal and storage medium
CN111309210A (en) System function execution method, device, terminal and storage medium
CN113825022B (en) Method and device for detecting play control state, storage medium and electronic equipment
CN106649621A (en) Method and device of displaying comment information
CN114090168A (en) Self-adaptive adjusting method for image output window of QEMU (QEMU virtual machine)

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
GR01 Patent grant
GR01 Patent grant