Task scheduling method, device, storage medium and program product

By responding to task processing events in the service system, assigning weight factors, predicting processing time, determining task priority, and dynamically adjusting task queues and thread pool resources, the problems of unreasonable task scheduling and low resource utilization in the existing technology are solved, and efficient task processing and resource utilization are achieved.

CN119759523APending Publication Date: 2025-04-0458 CHANG LIFE (BEIJING) INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411848247.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-13
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

In the prior art, when the service system processes a large number of data processing tasks, it is unable to reasonably schedule tasks, resulting in the inability to efficiently utilize thread pool resources.

Method used

By responding to task processing events, obtaining the pending target tasks from the task center, assigning weight factors based on task attribute information, predicting task processing time, determining task priority, and adding tasks to the dynamically adjusted task queue according to priority, thereby allocating thread resources from the thread pool for processing.

Benefits of technology

It realizes more efficient task scheduling and processing of task queues and thread pools based on dynamic changes, and improves task processing efficiency and resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119759523A_ABST
    Figure CN119759523A_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a task scheduling method, device, storage medium and program product. In this method, a weight factor can be assigned according to the attribute information of multiple target tasks; the processing time of the target task can be predicted according to the historical time-consuming information of the target task; the priority of multiple target tasks can be determined according to the weight factors, processing time and waiting time of multiple target tasks, and the target tasks can be added to the task queue according to the priority; the task queue is obtained according to the number of tasks and / or resource status information of multiple target tasks; the target thread resources are assigned to the scheduled target tasks from the thread pool, and the target thread resources are used to process the target tasks. The thread resources in the thread pool change dynamically according to the task queue change trend and / or the actual processing time of the target task. In this way, task scheduling can be performed more reasonably based on the dynamically changing task queue, and task processing can be performed more efficiently based on the dynamically changing thread pool.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a task scheduling method, device, storage medium and program product. Background Art

[0002] Internet companies usually provide service systems for user groups, and user groups can obtain services from the service systems according to their own needs. Specifically, the service system can obtain service data from the data demander (i.e., the user end) and establish corresponding data processing tasks, and use its own hardware resources to process the data processing tasks and return the processing results to the user end.

[0003] In actual scenarios, the number of users in a user group is usually large, and the service system can obtain a large number of data processing tasks to be processed in a short time, but the hardware resources available to the service system are limited. Based on this, in the prior art, the service system can usually queue multiple data processing tasks in the order of their generation time, so as to schedule the multiple data processing tasks accordingly, and use the thread pool resources to process the scheduled data processing tasks. However, on the one hand, this task scheduling method based on time sequence is not reasonable, and on the other hand, since it is impossible to reasonably schedule tasks, it may further lead to the inability to more efficiently utilize thread pool resources for task processing. Summary of the invention

[0004] Multiple aspects of the present application provide a task scheduling method, device, storage medium and program product for more efficiently scheduling and processing tasks based on dynamically changing task queues and thread pools.

[0005] The embodiment of the present application provides a task scheduling method, including: responding to a task processing event, obtaining multiple target tasks to be processed from a task center, and allocating weight factors to the multiple target tasks according to attribute information of the multiple target tasks; the weight factors are used to describe the importance and / or urgency of the target tasks; predicting the processing time of the multiple target tasks according to historical time information of historical tasks of the same type as the multiple target tasks; determining the priorities of the multiple target tasks according to the weight factors, processing time and waiting time for waiting to be obtained in the task center of the multiple target tasks; adding the multiple target tasks to a task queue for scheduling according to the priorities of the multiple target tasks; the task queue dynamically adjusts the length of the initial queue according to the number of tasks of the multiple target tasks and / or resource status information monitored by the operating system; allocating target thread resources to the scheduled target tasks from the thread pool, and using the target thread resources to process the scheduled target tasks, and the thread resources in the thread pool dynamically change according to the change trend of the task queue and / or the actual processing time of the target tasks scheduled at historical moments.

[0006] Optionally, based on the historical time consumption information of historical tasks of the same type as the multiple target tasks, the processing time consumption of the multiple target tasks is predicted, including: for any target task, taking a weighted sum of the historical processing time consumptions of multiple historical tasks of the same type as the target task to obtain the processing time consumption of the target task; or, calculating the average processing time consumption of the historical processing time consumptions of multiple historical tasks of the same type as the target task as the processing time consumption of the target task.

[0007] Optionally, based on the historical time consumption information of historical tasks of the same type as the multiple target tasks, the processing time of the multiple target tasks is predicted, including: inputting the attribute information of the multiple target tasks and the historical time consumption information of historical tasks of the same type as the multiple target tasks into a preset processing time prediction model to predict the processing time of the multiple target tasks.

[0008] Optionally, the attribute information includes at least one of the following: type information, complexity information, name information, scale information, version information and / or resource requirement information; the attribute information of the multiple target tasks and the historical time consumption information of historical tasks of the same type as the multiple target tasks are input into a preset processing time consumption prediction model to predict the processing time consumption of the multiple target tasks, including: inputting the historical time consumption information and at least one attribute information corresponding to any target task into the feature extraction layer in the time consumption prediction model, performing feature extraction on the historical time consumption information and the at least one attribute information corresponding to the target task to obtain multiple initial features; any initial feature corresponds to historical time consumption information or any attribute information; inputting the multiple initial features into the feature fusion layer in the time consumption prediction model, performing feature fusion on the multiple initial features according to the weight information of the historical time consumption information and the at least one attribute information to obtain the target fusion feature; inputting the target fusion feature into the time consumption prediction layer in the processing time consumption prediction model, and predicting the processing time of the target task according to the target fusion feature.

[0009] Optionally, the processing priorities of the multiple target tasks are determined based on the importance factors, processing time and waiting time for acquisition at the task center of the multiple target tasks, including: calculating the waiting time of any target task according to the arrival time of any target task at the task center and the current time; calculating the comprehensive influence factor of any target task according to the waiting time and weight factor of any target task; calculating the relative influence factors corresponding to the multiple target tasks according to the comprehensive influence factors and processing time of the multiple target tasks; calculating the processing priority of any target task according to the comprehensive influence factors of any target task, processing time and benchmark influence factors corresponding to the multiple target tasks.

[0010] Optionally, the resource status information includes at least one of the following: the number of threads of the thread pool, memory usage information and system throughput information; the method further includes: determining a first correction value for correcting the length of the initial queue according to the number of tasks of the multiple target tasks; dynamically adjusting the length of the initial queue using the first correction value to obtain the task queue; the number of tasks of the multiple target tasks is positively correlated with the first correction value; and / or, determining a second correction value for correcting the length of the initial queue according to the number of threads; dynamically adjusting the length of the initial queue using the second correction value to obtain the task queue; the number of threads is positively correlated with the second correction value; and / or, determining a third correction value for correcting the length of the initial queue according to the memory usage information; dynamically adjusting the length of the initial queue using the third correction value to obtain the task queue; the memory usage information is negatively correlated with the third correction value; and / or, determining a fourth correction value for correcting the length of the initial queue according to the system throughput information; dynamically adjusting the length of the initial queue using the fourth correction value to obtain the task queue; the system throughput information is positively correlated with the third correction value.

[0011] Optionally, it also includes: when the length of the task queue shows a trend of continuously increasing within the target duration, determining the first number of resources corresponding to the thread pool; the first number of resources is greater than the current number of thread resources in the thread pool; monitoring the actual processing time of the target task scheduled at the historical moment, and determining the second number of resources corresponding to the thread pool according to the difference between the actual processing time of the target task scheduled at the historical moment and its corresponding processing time; adjusting the thread resources in the thread pool according to the first number of resources and / or the second number of resources corresponding to the thread pool.

[0012] An embodiment of the present application also provides an electronic device, comprising: a memory and a processor; wherein the memory is used to: store one or more computer instructions; the processor is used to execute the one or more computer instructions to: execute the steps in the task scheduling method.

[0013] An embodiment of the present application also provides a computer-readable storage medium, which enables the processor to implement the steps in the task scheduling method when the computer program is executed by the processor.

[0014] An embodiment of the present application also provides a computer program product, including a computer program / instruction. When the computer program / instruction is executed by a processor, the processor is enabled to implement the steps in the task scheduling method.

[0015] In this embodiment, weight factors can be allocated according to the attribute information of multiple target tasks; the processing time of the target tasks can be predicted according to the historical time-consuming information of the target tasks; the priorities of the multiple target tasks can be determined according to the weight factors, processing time and waiting time of the multiple target tasks, and the target tasks can be added to the task queue according to the priorities; the task queue is obtained according to the number of tasks and / or resource status information of the multiple target tasks; the target thread resources are allocated to the scheduled target tasks from the thread pool, and the target thread resources are used to process the target tasks, and the thread resources in the thread pool change dynamically according to the change trend of the task queue and / or the actual processing time of the target tasks. In this way, task scheduling can be performed more reasonably based on the dynamically changing task queue, and task processing can be performed more efficiently based on the dynamically changing thread pool. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0017] Figure 1 A flowchart of a task scheduling method provided by an exemplary embodiment of the present application;

[0018] Figure 2 A flowchart of a task scheduling method provided by an exemplary embodiment of the present application in an actual application scenario;

[0019] Figure 3 A schematic diagram of an electronic device provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0020] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0021] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation portals for users to choose to authorize or refuse. In addition, the various models involved in this application (including but not limited to language models or large models) are in compliance with relevant laws and standards.

[0022] In actual scenarios, the number of users in a user group is usually large, and the service system can obtain a large number of data processing tasks to be processed in a short time, but the hardware resources available to the service system are limited. Based on this, in the prior art, the service system can usually queue multiple data processing tasks in the order in which they are generated, so as to schedule the multiple data processing tasks accordingly, and use thread pool resources to process the scheduled data processing tasks. However, on the one hand, this task scheduling method based on time sequence is not reasonable; on the other hand, since it is impossible to reasonably schedule tasks, it may further lead to the inability to more efficiently utilize thread pool resources for task processing.

[0023] In response to the above technical problems, in an embodiment of the present application, the priorities of multiple target tasks can be determined according to their weight factors, processing time and waiting time; according to the priorities of multiple target tasks, the target tasks are added to a task queue that changes dynamically with the number of tasks and resource status information to wait for task scheduling; target thread resources are allocated to the scheduled target tasks from a thread pool that changes dynamically with the task queue and the actual processing time of the tasks, and the scheduled target tasks are processed using the target thread resources.

[0024] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.

[0025] Figure 1 The task scheduling method provided by the exemplary embodiment of the present application is as follows: Figure 1 As shown, the method may include the following steps:

[0026] Step 11, in response to a task processing event, obtain multiple target tasks to be processed from the task center, and assign weight factors to the multiple target tasks according to their attribute information; the weight factors are used to describe the importance and / or urgency of the target tasks.

[0027] Step 12: predict the processing time of the multiple target tasks based on the historical time-consuming information of the historical tasks of the same type as the multiple target tasks.

[0028] Step 13: Determine the priorities of the multiple target tasks according to their weight factors, processing times, and waiting times for acquisition at the task center.

[0029] Step 14: according to the priorities of the multiple target tasks, the multiple target tasks are added to the task queue to wait for scheduling; the task queue dynamically adjusts the length of the initial queue according to the number of tasks of the multiple target tasks and / or the resource status information monitored by the operating system.

[0030] Step 15: Allocate target thread resources from the thread pool to the scheduled target task, and use the target thread resources to process the scheduled target task. The thread resources in the thread pool change dynamically according to the changing trend of the task queue and / or the actual processing time of the target task scheduled at the historical moment.

[0031] The execution subject of this embodiment may be a server or any terminal device, such as a computer, a tablet computer or a computer, etc., and this embodiment does not impose any limitation.

[0032] In this embodiment, the task may be any type of task, such as an image processing task, a data processing task, a speech recognition task, or a text processing task, etc., and this embodiment does not impose any restrictions. This embodiment does not impose any restrictions on the specific implementation of the task processing event. In some exemplary embodiments, the task processing event may be an event in which the task center receives a preset number of tasks, or an event in which the number of tasks stored in the task center exceeds a preset threshold, or an event in which a task processing cycle in the task center arrives, or an event in which a task processing instruction is received. The above preset number, preset threshold, and task processing cycle can all be set to any value according to actual design requirements, and this embodiment does not impose any restrictions.

[0033] In response to the task processing event, multiple target tasks can be obtained from the task center. The target task here refers to the task to be processed. That is to say, in this embodiment, the task processing event can be responded to, and multiple target tasks can be obtained in batches from the tasks stored in the task center. Each target task has attribute information, including but not limited to: at least one of type information, complexity information, name information, scale information, version information and resource requirement information. Among them, the type information is used to describe the task type corresponding to the target task, such as image processing type, speech recognition type, API (Application Programming Interface, Application Programming Interface) call type, data query type, data asynchronous processing type, etc. Complexity information is used to describe the algorithm complexity or logical complexity of the target task. Scale information is used to describe the data volume of the target task. Version information is used to describe the version corresponding to the target task at different time points or in different environments. Resource requirement information is used to describe the type and quantity of resources required for the target task, such as CPU (Central Processing Unit, central processing unit), memory, disk I / O (Input / Output, input / output), etc.

[0034] In this embodiment, the weight factor can be used to describe at least one of the importance and urgency of the target task. Taking the weight factor used to describe the importance of the target task as an example, the weight factor of target task L1 is 0.7, and the weight factor of target task L2 is 0.8, which means that target task L2 is more important than target task L1; taking the weight factor used to describe the urgency of the target task as an example, the weight factor of target task L3 is 0.5, and the weight factor of target task L4 is 0.4, which means that target task L3 is more urgent than target task L4; taking the weight factor used to describe the urgency and importance of the target task as an example, the weight factor of target task L5 is 0.9, and the weight factor of target task L6 is 0.85, which means that target task L5 is more urgent and more important than target task L6;

[0035] Among them, according to the preset allocation rules, weight factors can be allocated to multiple target tasks according to the attribute information of multiple target tasks, and the allocation rules store weight factors corresponding to different attribute information; the attribute information of multiple target tasks can also be displayed to the user, and in response to the user's weight factor allocation operation, weight factors can be allocated to multiple target tasks.

[0036] In this embodiment, the processing time of multiple target tasks can be predicted based on at least the historical time information of historical tasks of the same type as the multiple target tasks. The historical time information is used to describe the actual processing time when the historical task was processed at the historical moment. For example, there are five target tasks in total. Taking any one of the target tasks as an example, the target task is of image processing type. There are two image processing type historical tasks among the tasks processed at the historical moment. The actual processing time of these two image processing type historical tasks when they were processed at the historical moment is the historical time information of the historical tasks of the same type as the target task. Among them, the historical time information of the historical tasks can be monitored using the time monitoring component in the operating system, such as the component for monitoring the time indicator P99, etc. Among them, P99 is usually used to measure the response time, indicating that in the past period of time, 99% of the request response time is less than or equal to the P99 value, and only 1% of the request response time is greater than the P99 value.

[0037] Based on the above steps, the priorities of multiple target tasks can be determined more accurately according to their weight factors, processing time, and waiting time in the task center. For example, the target task enters the task center at 11:12:00 and starts waiting for acquisition, and is acquired at 11:12:50; then the waiting time in the task center is 50s.

[0038] According to the priorities of multiple target tasks, multiple target tasks are added to a dynamically changing task queue to wait for scheduling. Among them, multiple target tasks can be added to the task queue according to the first-in-first-out rule, that is, the higher the priority of the target task, the earlier it enters the task queue and is scheduled. Among them, the task queue can be obtained by dynamically adjusting the length of the initial queue according to at least one of the number of tasks of the multiple target tasks and the resource status information monitored by the operating system. Among them, the resource status information is used to describe the usage status of the current software resources and hardware resources, and may include at least one of the following: the number of threads in the thread pool, memory usage information, and system throughput information. Among them, the thread pool is a software mechanism for managing and scheduling multi-threaded tasks, which can execute tasks by pre-creating a group of threads and reusing these threads. The memory usage information is used to describe the usage of memory, which can be the memory usage rate. The system throughput information is used to describe the number of tasks or the amount of data that the system can process per unit time.

[0039] After adding multiple target tasks to the task queue, any number of target tasks in the head area can be scheduled from the task queue according to the first-in-first-out principle. For example, one target task at the head of the queue can be scheduled each time, or two target tasks at the head of the queue can be scheduled each time, and so on. This embodiment does not impose any restrictions.

[0040] Based on this, target thread resources can be allocated from the thread pool for the scheduled target task, and the scheduled target task can be processed using the target thread resources. Among them, the thread resources of the thread pool refer to the lightweight processes used to execute tasks in the operating system, that is, threads. The target thread resources refer to the thread resources allocated for the scheduled target task. Among them, the thread resources in the thread pool dynamically change according to at least one of the changing trend of the task queue and the actual processing time of the target task scheduled at the historical moment. Among them, the changing trend of the task queue refers to the trend presented by the change of the queue length of the task queue. The actual processing time of the target task scheduled at the historical moment can be monitored by the operating system. The timing starts when a target task is processed, and the timing stops when the target task is processed. The time difference between the two is the actual processing time.

[0041] In this way, the priorities of multiple target tasks can be determined more accurately based on their weight factors, processing time and waiting time for acquisition in the task center, so that task scheduling can be performed more reasonably based on the dynamically changing task queue, and task processing can be performed more efficiently based on the dynamically changing thread pool.

[0042] In some optional embodiments, step 12 in the above embodiment, "predicting the processing time of multiple target tasks based on the historical time information of historical tasks of the same type as the multiple target tasks" can be implemented based on the following implementation methods:

[0043] Implementation method 1: for any target task, the historical processing time of multiple historical tasks of the same type as the target task is weighted and summed to obtain the processing time of the target task. In particular, multiple historical tasks of the same type as the target task can be first determined, and then the calculation weights of the multiple historical tasks are determined according to the correspondence between the preset attribute information and the processing time and the attribute information of the multiple historical tasks; according to the calculation weights of the multiple historical tasks, the historical processing time of the multiple historical tasks is weighted and summed to obtain the processing time of the target task.

[0044] Implementation method 2: Calculate the average processing time of the historical processing times of multiple historical tasks of the same type as the target task, and use it as the processing time of the target task.

[0045] Through the above-mentioned implementation modes 1 and 2, the processing time consumption of the multiple target tasks can be predicted more accurately according to the historical time consumption information of the historical tasks of the same type as the multiple target tasks.

[0046] Implementation method three: input the attribute information of multiple target tasks and the historical time consumption information of historical tasks of the same type as the multiple target tasks into a preset processing time consumption prediction model to predict the processing time consumption of the multiple target tasks.

[0047] Specifically, the historical time-consuming information and at least one attribute information corresponding to any target task can be input into the feature extraction layer of the time-consuming prediction model, and the historical time-consuming information and at least one attribute information corresponding to the target task can be feature extracted to obtain a plurality of initial features. Among them, any initial feature corresponds to the historical time-consuming information or any attribute information. For example, any target task has two kinds of attribute information, namely type information and scale information; feature extraction of the historical time-consuming information and at least one attribute information corresponding to the target task can obtain three initial features, corresponding to the historical time-consuming information, type information and scale information.

[0048] The multiple initial features are input into the feature fusion layer in the time consumption prediction model, and the multiple initial features are fused according to the weight information of the historical time consumption information and at least one attribute information to obtain the target fused feature. The multiple initial features can be weighted summed according to the weight information to obtain the target fused feature.

[0049] The target fusion feature is input into the time consumption prediction layer in the processing time consumption prediction model, and the processing time consumption of the target task is predicted according to the target fusion feature. The time consumption prediction layer may include at least one fully connected layer, and the fully connected layer is used to map the target fusion feature to the processing time consumption of the target task.

[0050] Through the above-mentioned third implementation mode, the processing time consumption of the target task can be predicted more accurately by utilizing the pre-trained processing time consumption prediction model in combination with the attribute information and historical time consumption information of the target task.

[0051] In some optional embodiments, step 13 in the above embodiment, "determining the processing priorities of the multiple target tasks according to the importance factors, processing times and waiting times for acquisition in the task center of the multiple target tasks", can be implemented based on the following steps:

[0052] Step 131: Taking any target task as an example, the target task is the i-th target task, and the arrival time C of any target task at the task center can be i and the current time T current , calculate the waiting time of any target task, for example: T current -C i .

[0053] Step 132: according to the waiting time of any target task (such as T current -C i ) and weight factor P i , calculate the comprehensive impact factor of any target task, which can be used to characterize the impact of waiting time and weight factor on priority. For example, the comprehensive impact factor can be: Pi ·(T current -C i ).

[0054] Step 133: Based on the comprehensive impact factors of multiple target tasks (such as P i ·(T current -C i )) and processing time E i , calculate the relative impact factors corresponding to multiple target tasks. Exemplarily, the relative impact factor can be:

[0055] Step 134: Calculate the processing priority of any target task according to the comprehensive impact factor of any target task, the processing time consumption, and the benchmark impact factors corresponding to multiple target tasks.

[0056] Exemplarily, the processing priority of any target task may be calculated based on the following formula according to the comprehensive impact factor of any target task, the processing time consumption, and the benchmark impact factors corresponding to multiple target tasks.

[0057]

[0058] Among them, W i is the priority of the i-th target task, C i is the arrival time of the i-th target task; T current is the current time; T current -C i is the waiting time for the i-th target task; E i is the processing time of the i-th target task; P i is the weight factor of the i-th target task; n is the number of multiple target tasks.

[0059] In this way, the processing priorities of the multiple target tasks can be determined more accurately according to the importance factors, processing time and waiting time for acquisition in the task center of the multiple target tasks.

[0060] In some optional embodiments, the task queue may be obtained by dynamically adjusting the length of the initial queue according to at least one of the task quantities of multiple target tasks and operating system resource status information in the following manner.

[0061] Method 1: Determine a first correction value for correcting the length of an initial queue according to the number of tasks of multiple target tasks; dynamically adjust the length of the initial queue using the first correction value to obtain a task queue; the number of tasks of multiple target tasks is positively correlated with the first correction value.

[0062] The first correction value may be determined according to the correspondence between the preset number of tasks and the correction value, and the number of tasks of the multiple target tasks. The larger the number of tasks of the multiple target tasks, the larger the first correction value.

[0063] Method 2: Determine a second correction value for correcting the length of the initial queue according to the number of threads; dynamically adjust the length of the initial queue using the second correction value to obtain a task queue; the number of threads is positively correlated with the second correction value.

[0064] The second correction value can be determined according to the correspondence between the preset number of threads and the correction value and the current number of threads. Considering that the more threads in the thread pool, the stronger the parallel processing capability of the target task, the more threads, the larger the second correction value.

[0065] Method three: determining a third correction value for correcting the length of the initial queue according to the memory usage information; dynamically adjusting the length of the initial queue using the third correction value to obtain a task queue.

[0066] The third correction value may be determined based on the correspondence between the preset memory usage information and the correction value and the current memory usage information. Considering that the higher the memory usage rate, the less the current available memory is, and the weaker the parallel processing capability of the target task is, the memory usage information may be negatively correlated with the third correction value.

[0067] Method 4: determining a fourth correction value for correcting the length of the initial queue according to the system throughput information; and dynamically adjusting the length of the initial queue using the fourth correction value to obtain a task queue.

[0068] The fourth correction value may be determined according to the correspondence between the preset system throughput information and the correction value and the current system throughput information. Considering that the higher the system throughput, the stronger the parallel processing capability of the target task, the system throughput information may be positively correlated with the third correction value.

[0069] The above methods 1 to 4 can be executed separately or in combination, and this embodiment does not limit it. Taking the combination of methods 1 to 4 as an example, the first correction value, the second correction value, the third correction value and the fourth correction value can be weighted and summed according to the weight values ​​corresponding to the number of tasks, the number of threads, the memory usage information and the system throughput information to obtain the target correction value, and the length of the initial queue is dynamically adjusted using the target correction value to obtain the task queue.

[0070] In this way, according to at least one of the task quantity of multiple target tasks and the operating system resource status information, the length of the initial queue is dynamically adjusted more accurately to obtain a task queue, which is more in line with the current resource status of the operating system and the requirements of target task processing.

[0071] In some optional embodiments, the thread resources in the thread pool may also be dynamically adjusted based on the following steps:

[0072] Step R1, when the length of the task queue shows a trend of continuous increase within the target duration, determine the first resource quantity corresponding to the thread pool; the first resource quantity is greater than the current number of thread resources in the thread pool. Among them, the target duration can be any historical duration, such as 1min, 3min or 30s, etc., and this embodiment does not impose any restrictions. When the length of the task queue continues to increase within the target duration, it can be explained that the thread resources required to process the target tasks in the task queue are continuously increasing, and the concurrent processing capacity of the current thread pool needs to be improved. Therefore, the quantity value greater than the current number of thread resources can be determined in the following way as the first resource quantity corresponding to the thread pool:

[0073] In some exemplary methods, a preset default quantity value can be directly used as the first resource quantity corresponding to the thread pool; the first resource quantity corresponding to the thread pool can also be determined based on the preset resource quantities corresponding to different changing trends and the changing trend of the current task queue length. This embodiment does not impose any restrictions.

[0074] Step R2: monitor the actual processing time of the target task scheduled at the historical moment, and determine the second resource quantity corresponding to the thread pool according to the difference between the actual processing time of the target task scheduled at the historical moment and its corresponding processing time.

[0075] Among them, the actual processing time of the target task scheduled at the historical moment can be monitored by using the time consumption monitoring component in the operating system, such as the component for monitoring the time consumption index P99, etc. When determining the number of second resources corresponding to the thread pool according to the difference between the actual processing time of the target task scheduled at the historical moment and its corresponding processing time, the larger the difference, the more insufficient the current concurrent processing capacity, which may lead to an increase in the actual processing time of the target task, and therefore, the number of second resources corresponding to the thread pool may be positively correlated with the difference.

[0076] For example, there are three target tasks in the current task queue, which are target task L2, target task L3 and target task L4 in the order from the beginning to the end of the task queue. Among them, target task L1 is the target task scheduled and processed at the historical moment, and the currently scheduled target task is target task L2. Based on this, before allocating target thread resources from the thread pool to the scheduled target task L2, the second resource quantity corresponding to the thread pool can be determined based on the difference between the actual processing time of target task L1 and the predicted processing time corresponding to target task L1.

[0077] Step R3, adjusting the thread resources in the thread pool according to at least one of the first resource quantity and the second resource quantity corresponding to the thread pool. Wherein, adjusting the thread resources in the thread pool according to the first resource quantity corresponding to the thread pool is to adjust the number of thread resources in the thread pool to the first resource quantity.

[0078] The thread resources in the thread pool are adjusted according to the second resource quantity corresponding to the thread pool, that is, the number of thread resources in the thread pool is adjusted to the second resource quantity.

[0079] When adjusting the thread resources in the thread pool according to the first resource quantity and the second resource quantity corresponding to the thread pool, the first resource quantity and the second resource quantity can be weightedly summed according to the preset weight values ​​corresponding to each of the first resource quantity and the second resource quantity to obtain the target resource quantity; and the number of thread resources in the thread pool can be adjusted to the target resource quantity.

[0080] In this way, the thread resources in the thread pool can be dynamically adjusted more accurately according to the changing trend of the task queue and the actual processing time of the target task scheduled at the historical moment, so that the concurrent processing capability of the thread pool can meet the needs of task processing.

[0081] The following will further illustrate the above task scheduling method in combination with actual application scenarios.

[0082] like Figure 2 As shown, in actual application scenarios, tasks can be obtained from task data providers and stored in the task center; in response to task processing events, multiple target tasks to be processed are obtained from the task center, that is, Figure 2, task 1, task 2 and task 3 in the above embodiment. After that, the importance coefficient P can be allocated to the tasks to be processed: task 1, task 2 and task 3, where the importance coefficient P is the weight factor used to describe at least one of the importance and urgency of the target task in the above embodiment. After the allocation is completed, the priority of each of task 1, task 2 and task 3 can be calculated according to the attribute information of multiple target tasks, and task 1, task 2 and task 3 can be added to the priority queue (i.e., the task queue of the above embodiment) to wait for scheduling according to their respective priorities. Target thread resources are allocated to the scheduled target tasks from the dynamically changing thread pool, and the scheduled target tasks are processed using the target thread resources to obtain the result data of each of task 1, task 2 and task 3, and returned to the data user. Among them, the data user may be the same party as the task data provider, or may not be the same party, depending on the specific application scenario, and this embodiment is not limited.

[0083] Among them, the task queue with dynamically changing length has the following characteristics:

[0084] ①Support dynamic update of priority: tasks can be automatically sorted according to their priority to ensure that each scheduled task is the one with the highest priority.

[0085] ②Thread safety: To ensure that the operation of the priority queue is thread-safe, tasks can be inserted and retrieved simultaneously in multiple threads.

[0086] The following factors can be considered when the queue length changes:

[0087] ① If the number of threads in the thread pool is large, a longer queue length is required to store tasks. ② If the number of threads in the thread pool is small, the queue length should not be too long to avoid taking up too much memory or causing tasks to be delayed too long. ③ The system has a large throughput per second, and a longer queue length is required to store all pending tasks. ④ If the system has a low throughput per second, a shorter queue length can be set. ⑤ The more tasks stored in the queue, the more memory resources are consumed. ⑥ When memory is limited, the queue length should be able to dynamically increase or decrease.

[0088] Based on the above considerations, in actual application scenarios, an unbounded queue (PriorityBlockingQueue) dynamically expanded thread pool can be used to implement the above task scheduling method. This is more suitable for scenarios with highly fluctuating task volumes. Unbounded queues can ensure that tasks are not lost, and combined with the ability to dynamically expand the thread pool, it ensures increased processing capacity during peak load periods. In this way, task scheduling can be more reasonably performed; combined with the technical solution of dynamically adjusting the queue length and thread pool resources, it can ensure that the resource allocation for each task is more reasonable and efficient, thereby improving the efficiency of data transmission and processing.

[0089] It should be noted that the execution subject of each step of the method provided in the above embodiment can be the same device, or the method can be executed by different devices. For example, the execution subject of steps 11 to 15 can be device A; for another example, the execution subject of steps 11 to 12 can be device A, and the execution subject of steps 13 to 15 can be device B; and so on.

[0090] In addition, in some of the processes described in the above embodiments and the accompanying drawings, multiple operations appearing in a specific order are included, but it should be clearly understood that these operations may not be executed in the order in which they appear in this document or may be executed in parallel, and the sequence numbers of the operations, such as 12, 13, etc., are only used to distinguish between different operations, and the sequence numbers themselves do not represent any execution order. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel.

[0091] It should be noted that the descriptions such as “first” and “second” in this article are used to distinguish different messages, devices, modules, etc., and do not represent the order of precedence, nor do they limit “first” and “second” to different types.

[0092] Figure 3 is a schematic diagram of the structure of an electronic device provided by an exemplary embodiment of the present application, and the electronic device is applicable to the task scheduling method provided by the aforementioned embodiment, such as Figure 3 As shown, the electronic device may include: a memory 301 , a processor 302 and a communication component 303 .

[0093] The memory 301 is used to store computer programs and can be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device, contact data, phone book data, messages, pictures, videos, etc.

[0094] In some exemplary embodiments, the processor 302 is coupled to the memory 301 and is used to execute a computer program in the memory 301, so as to: respond to a task processing event, obtain multiple target tasks to be processed from the task center, and assign weight factors to the multiple target tasks according to the attribute information of the multiple target tasks; the weight factors are used to describe the importance and / or urgency of the target tasks; predict the processing time of the multiple target tasks according to the historical time information of historical tasks of the same type as the multiple target tasks; determine the priorities of the multiple target tasks according to the weight factors, processing time and waiting time for waiting to be obtained in the task center of the multiple target tasks; according to the priorities of the multiple target tasks, add the multiple target tasks to the task queue for scheduling; the task queue is obtained by dynamically adjusting the length of the initial queue according to the number of tasks of the multiple target tasks and / or the resource status information monitored by the operating system; allocate target thread resources to the scheduled target tasks from the thread pool, and use the target thread resources to process the scheduled target tasks, and the thread resources in the thread pool are dynamically changed according to the change trend of the task queue and / or the actual processing time of the target tasks scheduled at historical moments.

[0095] Optionally, the processor 302 predicts the processing time of the multiple target tasks based on the historical time information of the historical tasks of the same type as the multiple target tasks, specifically for: for any target task, taking the weighted sum of the historical processing time of multiple historical tasks of the same type as the target task to obtain the processing time of the target task; or calculating the average processing time of the historical processing time of multiple historical tasks of the same type as the target task as the processing time of the target task.

[0096] Optionally, the processor 302 predicts the processing time of the multiple target tasks based on the historical time information of the historical tasks of the same type as the multiple target tasks. Specifically, it is used to: input the attribute information of the multiple target tasks and the historical time information of the historical tasks of the same type as the multiple target tasks into a preset processing time prediction model to predict the processing time of the multiple target tasks.

[0097] Optionally, the attribute information includes at least one of the following: type information, complexity information, name information, scale information, version information and / or resource requirement information; the processor 302 inputs the attribute information of the multiple target tasks and the historical time information of the historical tasks of the same type as the multiple target tasks into a preset processing time prediction model to predict the processing time of the multiple target tasks, specifically for: inputting the historical time information and at least one attribute information corresponding to any target task into the feature extraction layer in the time prediction model, performing feature extraction on the historical time information and the at least one attribute information corresponding to the target task to obtain multiple initial features; any initial feature corresponds to the historical time information or any attribute information; inputting the multiple initial features into the feature fusion layer in the time prediction model, performing feature fusion on the multiple initial features according to the weight information of the historical time information and the at least one attribute information to obtain the target fusion feature; inputting the target fusion feature into the time prediction layer in the processing time prediction model, and predicting the processing time of the target task according to the target fusion feature.

[0098] Optionally, when the processor 302 determines the processing priority of the multiple target tasks based on the importance factors, processing time and waiting time for acquisition at the task center of the multiple target tasks, it is specifically used to: calculate the waiting time of any target task according to the arrival time of any target task at the task center and the current time; calculate the comprehensive influence factor of any target task according to the waiting time and weight factor of any target task; calculate the relative influence factors corresponding to the multiple target tasks according to the comprehensive influence factors and processing time of the multiple target tasks; calculate the processing priority of any target task according to the comprehensive influence factors, processing time and benchmark influence factors corresponding to the multiple target tasks.

[0099] Optionally, the resource status information includes at least one of the following: the number of threads in the thread pool, memory usage information and system throughput information; the processor 302 is also used to: determine a first correction value for correcting the length of the initial queue according to the number of tasks of the multiple target tasks; dynamically adjust the length of the initial queue using the first correction value to obtain the task queue; the number of tasks of the multiple target tasks is positively correlated with the first correction value; and / or, determine a second correction value for correcting the length of the initial queue according to the number of threads; dynamically adjust the length of the initial queue using the second correction value to obtain the task queue; the number of threads is positively correlated with the second correction value; and / or, determine a third correction value for correcting the length of the initial queue according to the memory usage information; dynamically adjust the length of the initial queue using the third correction value to obtain the task queue; the memory usage information is negatively correlated with the third correction value; and / or, determine a fourth correction value for correcting the length of the initial queue according to the system throughput information; dynamically adjust the length of the initial queue using the fourth correction value to obtain the task queue; the system throughput information is positively correlated with the third correction value.

[0100] Optionally, the processor 302 is also used to: determine the first number of resources corresponding to the thread pool when the length of the task queue shows a trend of continuous increase within the target duration; the first number of resources is greater than the current number of thread resources in the thread pool; monitor the actual processing time of the target task scheduled at the historical moment, and determine the second number of resources corresponding to the thread pool based on the difference between the actual processing time of the target task scheduled at the historical moment and its corresponding processing time; adjust the thread resources in the thread pool based on the first number of resources and / or the second number of resources corresponding to the thread pool.

[0101] Further, if Figure 3 As shown, the electronic device also includes: a display 304, a power component 305, an audio component 306 and other components. Figure 3 Only some components are shown schematically, which does not mean that the electronic device only includes Figure 3 Components shown.

[0102] An embodiment of the present application also provides a computer-readable storage medium, which enables the processor to implement the steps in the task scheduling method when the computer program is executed by the processor.

[0103] An embodiment of the present application also provides a computer program product, including a computer program / instruction. When the computer program / instruction is executed by a processor, the steps in the task scheduling method are executed.

[0104] In this embodiment, weight factors can be allocated according to the attribute information of multiple target tasks; the processing time of the target tasks can be predicted according to the historical time-consuming information of the target tasks; the priorities of the multiple target tasks can be determined according to the weight factors, processing time and waiting time of the multiple target tasks, and the target tasks can be added to the task queue according to the priorities; the task queue is obtained according to the number of tasks and / or resource status information of the multiple target tasks; the target thread resources are allocated to the scheduled target tasks from the thread pool, and the target thread resources are used to process the target tasks, and the thread resources in the thread pool change dynamically according to the change trend of the task queue and / or the actual processing time of the target tasks. In this way, task scheduling can be performed more reasonably based on the dynamically changing task queue, and task processing can be performed more efficiently based on the dynamically changing thread pool.

[0105] The above-mentioned memory can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable programmable read only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.

[0106] The above-mentioned communication component is configured to facilitate wired or wireless communication between the device where the communication component is located and other devices. The device where the communication component is located can access a wireless network based on a communication standard, such as WiFi, 2G, 3G, 4G / LTE, 5G and other mobile communication networks, or a combination thereof. In an exemplary embodiment, the communication component receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be based on Radio Frequency Identification (RFID) technology, Infrared Data Association (IrDA) technology, Ultra Wide Band (UWB) technology, Bluetooth (BT) technology and other technologies.

[0107] The above-mentioned display includes a screen, and the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.

[0108] The power supply assembly provides power to various components of the device where the power supply assembly is located. The power supply assembly may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device where the power supply assembly is located.

[0109] The above-mentioned audio component can be configured to output and / or input audio signals. For example, the audio component includes a microphone (Microphone, MIC), and when the device where the audio component is located is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in a memory or sent via a communication component. In some embodiments, the audio component also includes a speaker for outputting an audio signal.

[0110] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-readable storage media (including but not limited to disk storage, compact disc read-only memory (Compact Disc Read-Only Memory, CD-ROM), optical storage, etc.) containing computer-usable program code.

[0111] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1A device that provides the functions specified in a block or multiple blocks.

[0112] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0113] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0114] In a typical configuration, a computing device includes one or more processors (Central Processing Unit, CPU), input / output interface, network interface and memory.

[0115] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0116] Computer readable media include permanent and non-permanent, removable and non-removable media that can be used to store information by any method or technology. Information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase-change random access memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0117] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0118] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.

Claims

1. A task scheduling method, characterized in that: include: In response to a task processing event, a plurality of target tasks to be processed are obtained from a task center, and weight factors are assigned to the plurality of target tasks according to attribute information of the plurality of target tasks; The weight factor is used to describe the importance and / or urgency of the target task; Predicting the processing time of the multiple target tasks based on historical time-consuming information of historical tasks of the same type as the multiple target tasks; Determining priorities of the multiple target tasks according to weight factors, processing times, and waiting times for acquisition at the task center of the multiple target tasks; According to the priorities of the multiple target tasks, the multiple target tasks are added to a task queue to wait for scheduling; the task queue is obtained by dynamically adjusting the length of the initial queue according to the number of tasks of the multiple target tasks and / or resource status information monitored by the operating system; Target thread resources are allocated to the scheduled target task from the thread pool, and the scheduled target task is processed using the target thread resources. The thread resources in the thread pool dynamically change according to the change trend of the task queue and / or the actual processing time of the target task scheduled at a historical moment.

2. The method according to claim 1, characterized in that Predicting the processing time of the multiple target tasks according to the historical time consumption information of the historical tasks of the same type as the multiple target tasks includes: For any target task, weighted sum of the historical processing times of multiple historical tasks of the same type as the target task is performed to obtain the processing time of the target task; or, The average processing time of the historical processing times of multiple historical tasks of the same type as the target task is calculated as the processing time of the target task.

3. The method according to claim 1, characterized in that Predicting the processing time of the multiple target tasks according to the historical time consumption information of the historical tasks of the same type as the multiple target tasks includes: The attribute information of the multiple target tasks and the historical time consumption information of the historical tasks of the same type as the multiple target tasks are input into a preset processing time consumption prediction model to predict the processing time consumption of the multiple target tasks.

4. The method according to claim 1, characterized in that: The attribute information includes at least one of the following: type information, complexity information, name information, scale information, version information and / or resource requirement information; Inputting the attribute information of the multiple target tasks and the historical time consumption information of the historical tasks of the same type as the multiple target tasks into a preset processing time consumption prediction model to predict the processing time consumption of the multiple target tasks includes: Inputting the historical time-consuming information and at least one attribute information corresponding to any target task into the feature extraction layer of the time-consuming prediction model, performing feature extraction on the historical time-consuming information and at least one attribute information corresponding to the target task to obtain a plurality of initial features; any initial feature corresponds to the historical time-consuming information or any attribute information; Inputting the multiple initial features into the feature fusion layer in the time consumption prediction model, and fusing the multiple initial features according to the historical time consumption information and the weight information of the at least one attribute information to obtain the target fused feature; The target fusion feature is input into the time consumption prediction layer in the processing time consumption prediction model, and the processing time consumption of the target task is predicted according to the target fusion feature.

5. The method according to any one of claims 1 to 4, characterized in that: Determining the processing priorities of the multiple target tasks according to the importance factors, processing time and waiting time for acquisition at the task center of the multiple target tasks, including: Calculate the waiting time of any target task according to the arrival time of any target task at the task center and the current time; Calculate the comprehensive impact factor of any target task according to the waiting time and weight factor of any target task; Calculate the relative impact factors corresponding to the multiple target tasks according to the comprehensive impact factors and processing time of the multiple target tasks; The processing priority of any target task is calculated according to the comprehensive impact factor and processing time of any target task and the benchmark impact factors corresponding to the multiple target tasks.

6. The method according to any one of claims 1 to 4, characterized in that: The resource status information includes at least one of the following: the number of threads in the thread pool, memory usage information, and system throughput information; the method further includes: Determine a first correction value for correcting the length of the initial queue according to the number of tasks of the multiple target tasks; dynamically adjust the length of the initial queue using the first correction value to obtain the task queue; the number of tasks of the multiple target tasks is positively correlated with the first correction value; and / or, Determine a second correction value for correcting the length of the initial queue according to the number of threads; dynamically adjust the length of the initial queue using the second correction value to obtain the task queue; the number of threads is positively correlated with the second correction value; and / or, Determine a third correction value for correcting the length of the initial queue according to the memory usage information; dynamically adjust the length of the initial queue using the third correction value to obtain the task queue; the memory usage information is negatively correlated with the third correction value; and / or, According to the system throughput information, a fourth correction value for correcting the length of the initial queue is determined; the length of the initial queue is dynamically adjusted using the fourth correction value to obtain the task queue; the system throughput information is positively correlated with the third correction value.

7. The method according to any one of claims 1 to 4, characterized in that: Also includes: When the length of the task queue shows a trend of continuously increasing within the target duration, determining the first resource quantity corresponding to the thread pool; The first resource quantity is greater than the current quantity of thread resources in the thread pool; Monitor the actual processing time of the target task scheduled at the historical moment, and determine the second resource quantity corresponding to the thread pool according to the difference between the actual processing time of the target task scheduled at the historical moment and its corresponding processing time; The thread resources in the thread pool are adjusted according to the first resource quantity and / or the second resource quantity corresponding to the thread pool.

8. An electronic device, characterized in that: include: A memory and a processor; wherein the memory is used to: store one or more computer instructions; and the processor is used to execute the one or more computer instructions to: execute the steps in the method according to any one of claims 1 to 7.

9. A computer-readable storage medium, characterized in that: When the computer program is executed by a processor, the processor is enabled to implement the steps of the method according to any one of claims 1 to 7.

10. A computer program product, characterized in that The method comprises a computer program / instruction, which, when executed by a processor, enables the processor to implement the steps of the method according to any one of claims 1 to 7.

Citation Information

Cited By

  • Flow control system and method of security transaction system based on front and back end cooperation

    CN119963334A