Equipment standby control method and device, storage medium and equipment
By obtaining device standby task information, dynamically determines the wake-up time, solving the problems of high power consumption and incorrect power boot in device standby control, achieving more reliable device standby control and better user experience.
Patent Information
- Application Number
- CN202510299929.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-13
- Publication Date
- 2025-07-08
AI Technical Summary
The existing equipment standby control methods have the risks of high power consumption, shortened component life and incorrect startup, and the user experience is poor.
By obtaining the task information of the device's standby execution task, dynamically determine the wake-up time to avoid invalid wake-up, and dynamic wake-up time to execute the task.
Effectively reduce equipment power consumption, extend component life, avoid mis-start, and improve equipment standby control reliability and user experience.
Smart Images

Figure CN120276773A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of device control, and particularly to a device standby control method, apparatus, storage medium, and device. Background Art
[0002] Device standby control is to control the device in the standby state. Currently, device standby control usually adopts the low-power consumption mode (Doze mode). The low-power consumption mode is a power management function used to control the standby power consumption of the device in the standby state. When the device is in the standby state, it usually wakes up the device at fixed time intervals to execute standby execution tasks (i.e., tasks executed in the standby state).
[0003] In the current way, there are often some situations where the device is woken up at certain times but there is no task to execute, and it just wakes up and then goes back to sleep again. The power consumption overhead of the device is still relatively high, and it will reduce the lifespan of the components in the device. Especially for some devices such as TVs, it will increase the risk of accidental startup.
[0004] Therefore, the current device standby control method has the problem of poor control reliability, and the user experience needs to be improved. Summary of the Invention
[0005] The embodiments of this application provide a solution that can effectively improve the reliability of device standby control and enhance the user experience.
[0006] The embodiments of this application provide the following technical solutions:
[0007] According to an embodiment of this application, a device standby control method includes: in response to the device entering the standby state, obtaining the task information of the standby execution tasks in the device; performing decision-making processing according to the task information of the standby execution tasks to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution tasks; setting the one or more dynamic wake-up times in the device; and waking up the device when each of the dynamic wake-up times arrives to execute the tasks in the standby execution tasks within the period where each of the dynamic wake-up times is located.
[0008] In some embodiments of this application, the performing decision-making processing according to the task information of the standby execution tasks to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution tasks includes: starting from the moment when the standby state is entered, dividing a plurality of predetermined time windows at fixed time intervals; determining invalid time windows according to the task information of the standby execution tasks, where the invalid time windows refer to the predetermined time windows within the period where the tasks in the standby execution tasks do not need to be triggered; and determining the one or more dynamic wake-up times as the predetermined time windows other than the invalid time windows among the plurality of predetermined time windows.
[0009] In some embodiments of the present application, making a decision process according to the task information of the tasks to be executed in standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby includes: clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby to obtain one or more task clusters; adaptively allocating corresponding dynamic wake-up times for the one or more task clusters to obtain the one or more dynamic wake-up times.
[0010] In some embodiments of the present application, the task information of the tasks to be executed in standby includes the number of background tasks and the scheduled trigger times of scheduled tasks; determining the invalid window period according to the task information of the tasks to be executed in standby includes: determining the invalid window period for the scheduled window period in which there is no such scheduled trigger time and the number of tasks in the period is zero.
[0011] In some embodiments of the present application, clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby to obtain one or more task clusters includes: determining the required trigger times of each task in the tasks to be executed in standby according to the task information of the tasks to be executed in standby; clustering according to the required trigger times of each task in the tasks to be executed in standby to obtain one or more task clusters, and the interval between the required trigger times of two adjacent tasks in each task cluster is less than a predetermined duration.
[0012] In some embodiments of the present application, clustering according to the required trigger times of each task in the tasks to be executed in standby to obtain one or more task clusters includes: analyzing the device-related data before the device enters the standby state to obtain task clustering reference parameters; clustering according to the task clustering reference parameters and the required trigger times of each task in the tasks to be executed in standby to obtain one or more task clusters.
[0013] In some embodiments of the present application, obtaining the task information of the tasks to be executed in standby in the device includes: obtaining the number of background tasks through a preset service interface of a task scheduling service; obtaining the trigger time of a scheduled task through a preset service interface of an alarm management service, and the task information of the tasks to be executed in standby includes the number of background tasks and the trigger time of the scheduled task.
[0014] According to an embodiment of the present application, a device standby control device, the device includes: a management module, configured to: in response to the device entering the standby state, obtain task information of the tasks to be executed during standby in the device; a decision-making module, configured to: perform decision-making processing according to the task information of the tasks to be executed during standby, and obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed during standby; a setting module, configured to: set the one or more dynamic wake-up times in the device; a wake-up module, configured to: wake up the device when each of the dynamic wake-up times arrives, so as to execute the tasks in the periods where each of the dynamic wake-up times is located in the tasks to be executed during standby.
[0015] In some embodiments of the present application, the decision-making module is configured to: starting from the moment of entering the standby state, divide a plurality of predetermined time windows at a fixed time interval; determine invalid time windows according to the task information of the tasks to be executed during standby, where the invalid time windows refer to the predetermined time windows in the periods where the tasks in the tasks to be executed during standby do not need to be triggered; determine the one or more dynamic wake-up times as the predetermined time windows other than the invalid time windows among the plurality of predetermined time windows.
[0016] In some embodiments of the present application, the decision-making module is configured to: cluster the tasks included in the tasks to be executed during standby according to the task information of the tasks to be executed during standby, and obtain one or more task clusters; adaptively allocate corresponding dynamic wake-up times to the one or more task clusters to obtain the one or more dynamic wake-up times.
[0017] In some embodiments of the present application, the decision-making module is configured to: determine the invalid time windows as the predetermined time windows in which there is no such predetermined trigger time in the period and the number of tasks in the period is zero.
[0018] In some embodiments of the present application, the decision-making module is configured to: according to the task information of the tasks to be executed during standby, determine the required trigger times of each task in the tasks to be executed during standby; cluster according to the required trigger times of each task in the tasks to be executed during standby, and obtain one or more task clusters, and the interval between the required trigger times of two adjacent tasks in each task cluster is less than a predetermined duration.
[0019] In some embodiments of the present application, the decision-making module is configured to: analyze the device-related data before the device enters the standby state to obtain task clustering reference parameters; cluster according to the task clustering reference parameters and the required trigger times of each task in the tasks to be executed during standby, and obtain one or more task clusters.
[0020] In some embodiments of the present application, the obtaining module may be configured to: obtain the number of background tasks through a preset service interface of a task scheduling service; obtain the trigger time of a timed task through a preset service interface of an alarm management service, and the task information of the tasks to be executed during standby includes the number of background tasks and the trigger time of the timed task.
[0021] According to another embodiment of the present application, a storage medium stores a computer program thereon. When the computer program is executed by a processor of a computer, the computer is caused to execute the method described in the embodiments of the present application.
[0022] According to another embodiment of the present application, a device may include: a memory storing a computer program; a processor reading the computer program stored in the memory to execute the method described in the embodiments of the present application.
[0023] According to another embodiment of the present application, a computer program product or a computer program includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to execute the methods provided in various alternative implementations described in the embodiments of the present application.
[0024] In the embodiments of the present application, in response to the device entering the standby state, obtain the task information of the tasks to be executed during standby in the device; perform decision-making processing according to the task information of the tasks to be executed during standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed during standby; set the one or more dynamic wake-up times in the device; and wake up the device when each of the dynamic wake-up times arrives to execute the tasks within the cycle where each of the dynamic wake-up times is located in the tasks to be executed during standby.
[0025] In this way, by obtaining the task information of the tasks to be executed during standby in the device, making a decision based on the task information of the tasks to be executed during standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed during standby, and thus waking up the device to execute tasks in the standby state, unnecessary wake-up operations can be effectively avoided and the wake-up time of the device is more in line with the task trigger requirements, which can effectively reduce the power consumption of the device, extend the lifespan of the components in the device, and avoid the risk of accidental startup, overall improving the reliability of standby control of the device and enhancing the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] To more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those skilled in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0027] Figure 1 The flowchart of the device standby control method according to an embodiment of the present application is shown.
[0028] Figure 2 The schematic diagram of window decision according to an embodiment of the present application is shown.
[0029] Figure 3 The schematic diagram of information acquisition according to an embodiment of the present application is shown.
[0030] Figure 4 The schematic diagram of window decision according to another embodiment of the present application is shown.
[0031] Figure 5 The schematic diagram of window decision according to another embodiment of the present application is shown.
[0032] Figure 6 The block diagram of the device standby control device according to an embodiment of the present application is shown.
[0033] Figure 7 The block diagram of the device according to an embodiment of the present application is shown. Detailed implementation manners
[0034] The following further details the present disclosure in combination with the drawings and embodiments. It should be understood that the embodiments provided herein are only used to explain the present disclosure and not to limit the present disclosure. Additionally, the embodiments provided below are partial embodiments for implementing the present disclosure, rather than all embodiments for implementing the present disclosure. Without conflict, the technical solutions described in the embodiments of the present disclosure can be implemented in any combined manner.
[0035] It should be noted that in the embodiments of the present disclosure, the term "comprise", "include" or any other variant thereof is intended to cover a non-exclusive inclusion, such that a method or device including a series of elements not only includes those elements clearly recited, but also includes other elements not explicitly listed, or elements inherent to the implementation of the method or device. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of other relevant elements in the method or device including that element (such as steps in a method or units in a device, for example, the unit can be a partial circuit, a partial processor, a partial program or software, etc.).
[0036] For example, the device standby control method provided by the embodiments of the present disclosure includes a series of steps. However, the device standby control method provided by the embodiments of the present disclosure is not limited to the recorded steps. Similarly, the device standby control device provided by the embodiments of the present disclosure includes a series of units. However, the device provided by the embodiments of the present disclosure is not limited to including the explicitly recorded units, and may further include units required for obtaining relevant information or processing based on information.
[0037] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the technical field to which this disclosure belongs. The terms used herein are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure.
[0038] It can be understood that in the specific implementation of this application, when it comes to relevant data, when the embodiments in this application are applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions.
[0039] Device standby control means controlling the device in the standby state. Currently, device standby control usually adopts the low-power consumption mode (Doze mode). The low-power consumption mode is a power management function used to control the standby power consumption of the device in the standby state. When the device is in the standby state, the device is usually woken up at fixed time intervals to execute standby execution tasks (i.e., tasks executed in the standby state). In the current way, there are often some situations where the device is woken up but there is no task to execute, and it just wakes up and then goes back to sleep. The power consumption overhead of the device is still relatively high, and it will reduce the lifespan of the components in the device. Especially for some devices such as TVs, it will increase the risk of accidental power-on.
[0040] In response to this, this application provides a solution that can solve the above problems, effectively reduce the device power consumption, extend the lifespan of the components in the device, and avoid the risk of accidental power-on, thereby overall improving the reliability of device standby control and enhancing the user experience. Specifically, as Figure 1 Schematically shows a flowchart of a device standby control method according to an embodiment of the present application. The execution subject of this device standby control method can be any device with processing capabilities, such as a TV, a computer, a mobile phone, a tablet, a smart watch, and household appliances, etc.
[0041] As Figure 1 shown, this device standby control method may include step S110 to step S140.
[0042] Step S110, in response to the device entering the standby state, obtain the task information of the standby execution tasks in the device;
[0043] Step S120: Make a decision based on the task information of the standby execution task to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution task.
[0044] Step S130: Set the one or more dynamic wake-up times in the device.
[0045] Step S140: Wake up the device when each of the dynamic wake-up times arrives to execute the tasks in the standby execution task that are within the period corresponding to each dynamic wake-up time.
[0046] Generally, when the device enters the sleep mode, the screen is turned off, or it is not used for a long time, etc., the device will enter the standby state. After the device enters the standby state, obtain the task information of the standby execution tasks in the device. The standby execution tasks are tasks that may be triggered and executed in the standby state. The standby execution tasks may include, but are not limited to, background tasks (such as tasks set through the jobservice service) and scheduled tasks (such as tasks set through the alarm service), etc. The task information may include, but is not limited to, the number of tasks, task names, or scheduled trigger times, etc.
[0047] By making a decision based on the task information of the standby execution task, one or more dynamic wake-up times that match the task trigger requirements of the standby execution task can be obtained. Refer to Figure 2 , according to the existing control method, fixed wake-up times such as the predetermined window period 201 and the predetermined window period 202 are fixedly set. If there are no tasks within the period of the predetermined window period 203 (i.e., the time period between the predetermined window period 202 and the predetermined window period 203), the device will still be woken up when the window period 203 arrives; while in the way of the present application, the dynamic wake-up time obtained through decision-making processing will not include this predetermined window period 203, thereby avoiding waking up the device when the predetermined window period 203 arrives.
[0048] Set the one or more dynamic wake-up times in the device, and wake up the device when each dynamic wake-up time arrives to execute the tasks in the standby execution task that are within the period corresponding to each dynamic wake-up time, so as to ensure that there are tasks to be executed every time the device is woken up, which can avoid the situation where the device is woken up but there are no tasks to be executed, and the timing of waking up the device dynamically adapts to the task wake-up requirements. For example, as Figure 2 shown, when the predetermined window period 201 is used as a dynamic wake-up time, wake up the device when the predetermined window period 201 arrives, so that the device can execute several scheduled tasks, namely alarm1, alarm2, and alarm3, within the period corresponding to the predetermined window period 201.
[0049] In this way, by obtaining the task information of the tasks to be executed in standby in the device, and making a decision based on the task information of the tasks to be executed in standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby, and thus waking up the device to execute the tasks in the standby state, it is possible to effectively avoid unnecessary wake-up operations and the wake-up time of the device is more in line with the task trigger requirements, which can effectively reduce the power consumption of the device, extend the lifespan of the components in the device, and avoid the risk of accidental startup, and overall improve the reliability of the standby control of the device and enhance the user experience.
[0050] The following description Figure 1 In the embodiments, when performing standby control of the device, specific embodiments that are further optional under each step are described.
[0051] In one embodiment, the obtaining of the task information of the tasks to be executed in standby in the device may specifically include: obtaining the number of background tasks through a preset service interface of the task scheduling service; obtaining the trigger time of the scheduled tasks through a preset service interface of the alarm management service, and the task information of the tasks to be executed in standby includes the number of background tasks and the trigger time of the scheduled tasks.
[0052] The task scheduling service (JobSchedulerService) is a service responsible for managing and scheduling background tasks (Jobs). The background tasks can be tasks set through the jobservice service. For example, the background tasks are tasks that perform processing operations such as data synchronization, log upload, and regular update in the background.
[0053] The alarm management service (AlarmManagerService) is a service responsible for managing and triggering scheduled tasks (Alarms) in the system. The alarm management service allows application programs to perform certain operations at specific times or intervals. The scheduled tasks are tasks such as scheduled reminders and scheduled data synchronization.
[0054] In this embodiment of the present application, by respectively configuring corresponding preset service interfaces in the task scheduling service and the alarm management service, the number of background tasks can be obtained through the preset service interface of the task scheduling service, and the trigger time of the scheduled tasks can be obtained through the preset service interface of the alarm management service. Taking the number of background tasks and the trigger time of the scheduled tasks as task information, it is possible to reliably perform decision-making processing to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby.
[0055] Further, refer to Figure 3, device standby control usually adopts a low-power consumption mode (Doze mode), and the service for managing the low-power consumption mode is the device idle management service (DeviceidleController). In a real-time manner, modules such as a management module, a decision-making module, a setting module, and a wake-up module can be set in the device idle management service 310. The management module can query and obtain information such as the number of background tasks through a preset service interface of the task scheduling service 320, and the management module can query and obtain information such as the trigger time of the scheduled task through a preset service interface of the alarm management service 330. The decision-making module can make a decision based on the task information of the standby execution task to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution task.
[0056] In one embodiment, the making a decision based on the task information of the standby execution task to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution task includes: taking the moment of entering the standby state as the starting point, dividing a plurality of predetermined window periods at a fixed time interval; determining an invalid window period according to the task information of the standby execution task, where the invalid window period refers to the predetermined window period in which the task in the standby execution task does not need to be triggered within the cycle; and determining the predetermined window periods other than the invalid window period among the plurality of predetermined window periods as the one or more dynamic wake-up times.
[0057] For example, refer to Figure 2 , taking the moment of entering the standby state as the starting point, a plurality of predetermined window periods divided at a fixed time interval are respectively the predetermined window period 201, the predetermined window period 202, the predetermined window period 203, and the predetermined window period 204. An invalid window period can be determined according to the task information of the standby execution task, where the invalid window period refers to the predetermined window period in which the task in the standby execution task does not need to be triggered within the cycle. For example, if the task in the standby execution task does not need to be triggered within the cycle of the predetermined window period 203 (i.e., the time period between the predetermined window period 202 and the predetermined window period 203), then the predetermined window period 203 is determined as an invalid window period.
[0058] Furthermore, when determining the predetermined window periods other than the invalid window period among the plurality of predetermined window periods as the one or more dynamic wake-up times, the predetermined window period 201, the predetermined window period 202, and the predetermined window period 204 are respectively a dynamic wake-up time. In this way, the final dynamic wake-up times are obtained by dividing at a fixed time interval and eliminating the invalid window period, so that each dynamic wake-up time to wake up the device ensures that there is a corresponding task to execute, effectively avoiding unnecessary wake-up operations.
[0059] Further, the task information of the tasks to be executed in standby includes the number of background tasks and the scheduled trigger time of scheduled tasks; determining the invalid window period according to the task information of the tasks to be executed in standby may include: determining the invalid window period for the predetermined window period in which there is no such scheduled trigger time and the number of tasks in the period is zero.
[0060] For example, referring to Figure 4 , first, in step S410, it is determined whether the number of background tasks is empty. Among them, if not, the predetermined window period 201 is first determined as a dynamic wake-up time; if so, it is further determined whether the scheduled tasks within the predetermined window period 201 are empty (that is, it is determined whether the number of tasks within the predetermined window period 201 and in the period is zero). If not, it means that there is a scheduled trigger time within the period where the predetermined window period 201 is located, and the predetermined window period 201 is also determined as a dynamic wake-up time. On the contrary, if there is no scheduled trigger time within the period where the predetermined window period 201 is located and the number of tasks in the period is zero, then the predetermined window period 201 is determined as an invalid window period. By analogy, through steps S420 to S450, the invalid window period including the predetermined window period 203 can be accurately determined in turn.
[0061] Further, in an embodiment, making a decision process according to the task information of the tasks to be executed in standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby may include: clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby to obtain one or more task clusters; adaptively allocating corresponding dynamic wake-up times for the one or more task clusters to obtain the one or more dynamic wake-up times.
[0062] In this embodiment, first, the tasks included in the tasks to be executed in standby are clustered according to the task information of the tasks to be executed in standby to obtain one or more task clusters. For example, referring to Figure 5 , the tasks alarm1, alarm2, alarm3, and alarm4 are clustered into a task cluster 1, alarm5 is clustered into a task cluster 2, and alarm6 is clustered into a task cluster 3. Furthermore, corresponding dynamic wake-up times 501, dynamic wake-up time 502, and dynamic wake-up time 503 can be allocated for each task cluster respectively. In this way, the dynamic wake-up time can be more reasonably decided and allocated, further effectively avoiding unnecessary wake-up operations, and the time to wake up the device further conforms to the task trigger requirements, further effectively reducing the power consumption of the device, prolonging the life of the components in the device, and avoiding the risk of accidental startup.
[0063] In one implementation, clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby to obtain one or more task clusters may include:
[0064] According to the task information of the tasks to be executed in standby, determine the trigger time required for each task in the tasks to be executed in standby; cluster according to the trigger time required for each task in the tasks to be executed in standby to obtain one or more task clusters, and the interval between the trigger times required for two adjacent tasks in each task cluster is less than a predetermined duration.
[0065] When clustering the tasks included in the tasks to be executed in standby, specifically cluster according to the trigger time required for each task in the tasks to be executed in standby, and the interval between the trigger times required for two adjacent tasks in each obtained task cluster is less than a predetermined duration. For example, refer to Figure 5 , the interval between the trigger times required for two adjacent tasks among alarm1, alarm2, alarm3, and alarm4 is less than a predetermined duration, so that the dynamic wake-up time can be reasonably decided and allocated.
[0066] Further, in one implementation, clustering according to the trigger time required for each task in the tasks to be executed in standby to obtain one or more task clusters may include: analyzing the device-related data before the device enters the standby state to obtain a task clustering reference parameter; clustering according to the task clustering reference parameter and the trigger time required for each task in the tasks to be executed in standby to obtain one or more task clusters.
[0067] In this embodiment, further analyze the device-related data before the device enters the standby state to obtain a task clustering reference parameter. Among them, the device-related data may include, but is not limited to, the remaining battery power of the device and the user operation data before entering the standby state. The method of analyzing the device-related data before the device enters the standby state may specifically be to query the "task clustering reference parameter" matching the device-related data from a preset parameter table.
[0068] In one example, the task clustering reference parameter may be the "predetermined duration" in the foregoing embodiment. In other examples, the task clustering reference parameter may be other parameters for reference during clustering.
[0069] When the task clustering reference parameter may be the "predetermined duration" in the foregoing embodiment, clustering according to the task clustering reference parameter and the trigger time required for each task in the tasks to be executed in standby to obtain one or more task clusters, and the interval between the trigger times required for two adjacent tasks in each obtained task cluster is less than the "predetermined duration". Thus, the division of each task cluster is more in line with the state before the device enters the standby state, and based on this, the task cluster can further more reasonably decide and allocate the dynamic wake-up time.
[0070] To facilitate the better implementation of the device standby control method provided by the embodiments of the present application, the embodiments of the present application also provide a device standby control device based on the above device standby control method. The meanings of the nouns are the same as those in the above device standby control method, and the specific implementation details can be referred to the descriptions in the method embodiments. Figure 6 The block diagram of the device standby control device according to an embodiment of the present application is shown.
[0071] As Figure 6 shown, the device standby control device 600 may include: The management module 610 may be configured to: in response to the device entering the standby state, obtain the task information of the standby execution tasks in the device; The decision module 620 may be configured to: perform decision processing according to the task information of the standby execution tasks to obtain one or more dynamic wake-up times that match the task trigger requirements of the standby execution tasks; The setting module 630 may be configured to: set the one or more dynamic wake-up times in the device; The wake-up module 640 may be configured to: wake up the device when each of the dynamic wake-up times arrives to execute the tasks in the standby execution tasks within the period where each of the dynamic wake-up times is located.
[0072] In some embodiments of the present application, the decision module is configured to: starting from the moment when entering the standby state, divide a plurality of predetermined window periods at a fixed time interval; determine the invalid window periods according to the task information of the standby execution tasks, where the invalid window periods refer to the predetermined window periods within the period where the tasks in the standby execution tasks do not need to be triggered; determine the one or more dynamic wake-up times from the plurality of predetermined window periods except the invalid window periods.
[0073] In some embodiments of the present application, the decision module is configured to: cluster the tasks included in the standby execution tasks according to the task information of the standby execution tasks to obtain one or more task clusters; adaptively allocate corresponding dynamic wake-up times for the one or more task clusters to obtain the one or more dynamic wake-up times.
[0074] In some embodiments of the present application, the decision module is configured to: determine the invalid window periods from the predetermined window periods where there is no such predetermined trigger time within the period and the number of tasks within the period is zero.
[0075] In some embodiments of the present application, the decision-making module is configured to: determine the required trigger time of each task in the tasks to be executed in standby according to the task information of the tasks to be executed in standby; perform clustering according to the required trigger time of each task in the tasks to be executed in standby, to obtain one or more task clusters, and the interval between the required trigger times of two adjacent tasks in each of the task clusters is less than a predetermined duration.
[0076] In some embodiments of the present application, the decision-making module is configured to: analyze the device-related data before the device enters the standby state to obtain task clustering reference parameters; perform clustering according to the task clustering reference parameters and the required trigger time of each task in the tasks to be executed in standby, to obtain one or more task clusters.
[0077] In some embodiments of the present application, the acquisition module may be configured to: obtain the number of background tasks through a preset service interface of a task scheduling service; obtain the trigger time of a timed task through a preset service interface of an alarm management service, and the task information of the tasks to be executed in standby includes the number of background tasks and the trigger time of the timed task.
[0078] It should be noted that although several modules or units of a device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of the two or more modules or units described above may be embodied in one module or unit. Conversely, the features and functions of one module or unit described above may be further divided and embodied by multiple modules or units.
[0079] In addition, an embodiment of the present application further provides a device, as Figure 7 shown, Figure 7 The block diagram of a device according to an embodiment of the present application is shown. Specifically:
[0080] The device may include a processor 701 with one or more processing cores, a memory 702 with one or more computer-readable storage media, a power supply 703, an input unit 704, and other components. Those skilled in the art can understand that Figure 7 the device structure shown in
[0081] The processor 701 is the control center of the device, connecting various parts of the entire computer device through various interfaces and circuits. By running or executing software programs and / or modules stored in the memory 702, and by calling the data stored in the memory 702, it executes various functions of the computer device and processes data, thereby monitoring the device as a whole. Optionally, the processor 701 may include one or more processing cores; preferably, the processor 701 may integrate an application processor and a modem processor. Among them, the application processor mainly processes the operating system, user interfaces, and application programs, etc., and the modem processor mainly processes wireless communication. It can be understood that the above-mentioned modem processor may not be integrated into the processor 701 either.
[0082] The memory 702 can be used to store software programs and modules. The processor 701 executes various functional applications and data processing by running the software programs and modules stored in the memory 702. The memory 702 mainly includes a program storage area and a data storage area. Among them, the program storage area can store the operating system, application programs required for at least one function (such as the sound playback function, the image playback function, etc.); the data storage area can store data created according to the use of the computer device. In addition, the memory 702 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other non-volatile solid-state storage devices. Correspondingly, the memory 702 may also include a memory controller to provide the processor 701 with access to the memory 702.
[0083] The device also includes a power supply 703 that powers each component. Preferably, the power supply 703 can be logically connected to the processor 701 through a power management system, so as to realize functions such as management of charging, discharging, and power consumption management through the power management system. The power supply 703 may also include any components such as one or more DC or AC power supplies, a recharge system, a power failure detection circuit, a power converter or inverter, and a power status indicator.
[0084] The device may also include an input unit 704, which can be used to receive input digital or character information, and generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function control.
[0085] Although not shown, the device may also include a display unit, etc., which will not be elaborated here. Specifically, in this embodiment, the processor 701 in the device will load the executable files corresponding to the processes of one or more computer programs into the memory 702 according to the following instructions, and the processor 701 will run the computer programs stored in the memory 702 to implement various functions in the foregoing embodiments of the present application. For example, the processor 501 may execute the following steps:
[0086] In response to the device entering the standby state, obtain the task information of the tasks to be executed during standby in the device; perform decision-making processing based on the task information of the tasks to be executed during standby to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed during standby; set the one or more dynamic wake-up times in the device; and wake up the device when each of the dynamic wake-up times arrives to execute the tasks within the cycle where each of the dynamic wake-up times is located in the tasks to be executed during standby.
[0087] Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by a computer program or by controlling relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0088] For this reason, an embodiment of the present application further provides a storage medium in which a computer program is stored. The computer program can be loaded by a processor to execute the steps in any one of the methods provided by the embodiments of the present application.
[0089] Among them, the storage medium may be a computer-readable storage medium, and the storage medium may include: read-only memory (ROM, Read Only Memory), random access memory (RAM, Random Access Memory), a magnetic disk or an optical disc, etc.
[0090] Since the computer program stored in the storage medium can execute the steps in any one of the methods provided by the embodiments of the present application, the beneficial effects achievable by the methods provided by the embodiments of the present application can be realized. For details, see the previous embodiments and will not be elaborated here.
[0091] After considering the specification and practicing the disclosed embodiments herein, those skilled in the art will readily conceive of other embodiments of the present application. The present application is intended to cover any variations, uses, or adaptations of the present application that follow the general principles of the present application and include known common knowledge or conventional technical means in the technical field not disclosed in the present application.
[0092] It should be understood that the present application is not limited to the embodiments described above and shown in the drawings, but various modifications and changes can be made without departing from its scope.
Claims
1. A device standby control method, characterized in that, Including: Upon the device entering the standby state, obtaining the task information of the tasks to be executed in standby of the device; Performing decision-making processing based on the task information of the tasks to be executed in standby, to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby; Setting the one or more dynamic wake-up times in the device; Waking up the device when each of the dynamic wake-up times arrives, to execute the tasks within the periods where each of the dynamic wake-up times is located in the tasks to be executed in standby.
2. The method according to claim 1, wherein The performing decision-making processing based on the task information of the tasks to be executed in standby, to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby, includes: Taking the moment of entering the standby state as the starting point, dividing a plurality of predetermined window periods at fixed time intervals; Determining invalid window periods according to the task information of the tasks to be executed in standby, where the invalid window periods refer to the predetermined window periods within whose periods the tasks in the tasks to be executed in standby do not need to be triggered; Determining the predetermined window periods other than the invalid window periods among the plurality of predetermined window periods as the one or more dynamic wake-up times.
3. The method according to claim 1, characterized in that The performing decision-making processing based on the task information of the tasks to be executed in standby, to obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby, includes: Clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby, to obtain one or more task clusters; Adaptive allocation of corresponding dynamic wake-up times for the one or more task clusters, to obtain the one or more dynamic wake-up times.
4. The method according to claim 2, wherein The task information of the tasks to be executed in standby includes the number of background tasks and the predetermined trigger times of scheduled tasks; The determining invalid window periods according to the task information of the tasks to be executed in standby, includes: Determining the predetermined window periods within whose periods there is no such predetermined trigger time and the number of tasks within whose periods is zero as the invalid window periods.
5. The method according to claim 3, wherein The clustering the tasks included in the tasks to be executed in standby according to the task information of the tasks to be executed in standby, to obtain one or more task clusters, includes: Determining the required trigger times of each task in the tasks to be executed in standby according to the task information of the tasks to be executed in standby; Clustering according to the required trigger times of each task in the tasks to be executed in standby, to obtain one or more task clusters, where the interval between the required trigger times of two adjacent tasks in each task cluster is less than a predetermined duration.
6. The method according to claim 5, characterized in that, The clustering according to the required trigger times of each task in the tasks to be executed in standby, to obtain one or more task clusters, includes: Analyzing the device-related data before the device enters the standby state, to obtain task clustering reference parameters; Clustering according to the task clustering reference parameters and the required trigger times of each task in the tasks to be executed in standby, to obtain one or more task clusters.
7. The method according to any one of claims 1 to 6, characterized in that The obtaining the task information of the tasks to be executed in standby of the device, includes: Obtaining the number of background tasks through a preset service interface of the task scheduling service; Obtain the trigger time of the timing task through the preset service interface of the alarm management service. The task information of the task to be executed in standby includes the number of tasks of the background task and the trigger time of the timing task.
8. An apparatus standby control device, characterized in that, It includes: A management module, configured to: in response to the device entering the standby state, obtain the task information of the tasks to be executed in standby in the device; A decision-making module, configured to: perform decision-making processing according to the task information of the tasks to be executed in standby, and obtain one or more dynamic wake-up times that match the task trigger requirements of the tasks to be executed in standby; A setting module, configured to: set the one or more dynamic wake-up times in the device; A wake-up module, configured to: wake up the device when each of the dynamic wake-up times arrives, so as to execute the tasks in the periods where each of the dynamic wake-up times is located in the tasks to be executed in standby.
9. A storage medium, characterized in that, There is a computer program stored thereon. When the computer program is executed by the processor of the computer, the computer is caused to execute the method according to any one of claims 1 to 7.
10. A device, characterized in that, It includes: A memory, storing a computer program; A processor, reading the computer program stored in the memory to execute the method according to any one of claims 1 to 7.