A method, apparatus, device, and storage medium for multi-screen composite display based on the OpenHarmony system.
By adjusting the number of worker threads according to the number of display nodes, parallel processing of multi-screen displays is achieved, solving the problem of low frame rate in multi-screen displays in the OpenHarmony system and improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-13
- Publication Date
- 2026-03-10
AI Technical Summary
In the OpenHarmony system, the frame rate is low when multiple screens are displayed, which leads to a decline in the user experience.
Adjust the number of worker threads based on the number of display nodes, and adjust the number of threads in the thread pool to ensure that each display node has at least one worker thread to handle the composite display task, thus achieving parallel processing.
It improves the frame rate of multi-screen displays, enhancing the user experience, especially in 1080P dual-display scenarios, increasing the average frame rate by about 13 frames.
Smart Images

Figure CN119917044B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to the technical field of display screen synthesis rendering, and in particular to a multi-screen synthesis display method and device based on an OpenHarmony system, a device, and a storage medium. BACKGROUND
[0002] In the OpenHarmony system, when multi-screen display is performed, such as connecting two or more displays, each display displays the same screen, that is, multi-screen same display, connecting two or more displays, each display displays different screens, that is, multi-screen different display, and the frame rate of the display is low.
[0003] This will result in a significant decrease in the frame rate of the screen when switching from single-screen display to multi-screen display, which will affect the user experience. SUMMARY
[0004] Embodiments of the present application provide a multi-screen synthesis display method and device based on an OpenHarmony system, a device, and a storage medium to improve the frame rate of the screen when multi-screen display is performed and to improve the user experience.
[0005] In a first aspect, embodiments of the present application provide a multi-screen synthesis display method based on an OpenHarmony system, the method comprising:
[0006] In the case of receiving a synthesis display task, increasing or decreasing the number of working threads according to the number of connected display nodes to obtain at least one new layer synthesis thread, the number of which is greater than 1;
[0007] Sending the synthesis display task to the original layer synthesis thread or the new layer synthesis thread for processing to obtain a synthesis result;
[0008] Sending the synthesis result to the display node corresponding to the synthesis display task for display.
[0009] In a second aspect, embodiments of the present application provide a multi-screen synthesis display device based on an OpenHarmony system, comprising:
[0010] A thread adjustment module configured to, in the case of receiving a synthesis display task, increase or decrease the number of working threads according to the number of connected display nodes to obtain at least one new layer synthesis thread, the number of which is greater than 1;
[0011] A layer synthesis module configured to send the synthesis display task to the original layer synthesis thread or the new layer synthesis thread for processing to obtain a synthesis result;
[0012] A display module configured to send the synthesis result to the display node corresponding to the synthesis display task for display.
[0013] Thirdly, embodiments of this application also provide a multi-screen compositing and display device based on the OpenHarmony system, the multi-screen compositing and display device based on the OpenHarmony system comprising:
[0014] One or more processors;
[0015] Storage device for storing one or more programs.
[0016] When one or more programs are executed by one or more processors, the one or more processors implement the multi-screen composite display method based on the OpenHarmony system provided in any embodiment of this application.
[0017] Fourthly, embodiments of this application also provide a computer-readable storage medium storing a computer program thereon, characterized in that, when the program is executed by a processor, it implements the multi-screen composite display method based on the OpenHarmony system provided in any embodiment of this application.
[0018] The technical solution of this application embodiment, upon receiving a compositing and display task, adjusts the number of working threads based on the number of currently connected display nodes to obtain at least one new layer compositing thread, with a quantity greater than 1; the compositing and display task is sent to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result; the compositing result is then sent to the display node corresponding to the compositing and display task for display. Based on this, this application adjusts the number of working threads according to the number of display nodes, ensuring that the number of display nodes and the number of working threads remain consistent. This allows for fully parallel processing of the compositing and display task, and the number of working threads can be adjusted adaptively when display nodes are added or removed, guaranteeing that each display node has a working thread to handle its compositing and display task. This improves the frame rate during multi-screen display and enhances the user experience. Attached Figure Description
[0019] Figure 1 A flowchart illustrating the multi-screen composite display method based on the OpenHarmony system provided in Embodiment 1 of this application;
[0020] Figure 2 This is a schematic diagram of the structure of a multi-screen composite display device based on the OpenHarmony system provided in Embodiment 2 of this application;
[0021] Figure 3 This is a schematic diagram of a multi-screen composite display device based on the OpenHarmony system, provided in Embodiment 3 of this application. Detailed Implementation
[0022] The present application will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the application and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present application, not the entire structure.
[0023] Example 1
[0024] Figure 1 This is a flowchart illustrating the multi-screen composite display method based on the OpenHarmony system provided in Embodiment 1 of this application, as shown below. Figure 1 As shown, the multi-screen compositing and display method based on the OpenHarmony system provided in this embodiment can be implemented based on a multi-screen compositing and display device based on the OpenHarmony system equipped with a video acquisition terminal, and may specifically include the following steps:
[0025] Step 101: Upon receiving a composite display task, increase or decrease the number of worker threads based on the number of currently connected display nodes to obtain at least one new layer composite thread, with a quantity greater than 1.
[0026] In this embodiment, the composite display task refers to the task of compositing the layers of a completed display interface and then sending them to the display driver of the display node for display. A display interface typically consists of multiple layers, such as the status bar, display area, title area, and desktop. The process of generating layers is usually a canvas rendering process, which can be found in relevant technologies and will not be elaborated here.
[0027] It should be noted that the composite display task received in this step contains multiple layer information and bound display node identification information. After receiving the composite display task, the number of worker threads can be increased or decreased first.
[0028] Specifically, you can first obtain the number of currently connected display nodes, and start the thread pool if the number meets the preset thread pool start conditions; then adjust the number of worker threads in the thread pool according to the number to obtain at least one new layer compositing thread.
[0029] The display node is the monitor. When the system connects to one monitor, there is one display node. When two monitors are connected, there are two display nodes. Each display node corresponds one-to-one with a monitor. That is to say, each time a new monitor is connected, a new display node will be added.
[0030] In addition, in the OpenHarmony system, each time a display is connected, a display node is added in the form of a display node tree. All the display nodes connected to it form a display node tree. By traversing the nodes in the display node tree and counting them, the current number of display nodes can be obtained.
[0031] Therefore, to obtain the number of display nodes, we can traverse the display node tree and count the nodes in the tree. After the traversal is complete, we get the number of currently connected display nodes. In a specific example, there are 5 nodes in the display node tree. After traversing, the count is incremented by 1 for each node visited. After the traversal is complete, the final count value is the number of currently connected display nodes.
[0032] It should be noted that since the display node tree is usually real-time and will be refreshed based on a certain refresh rate to identify and refresh the hardware (i.e. the display), it can represent the current status of the actual connected display in real time. Therefore, the number of display nodes obtained based on this display node tree is most consistent with the number of actual connected display nodes, which can make the solution of this application more accurate.
[0033] Additionally, the default condition for starting the thread pool is that the number of display nodes is greater than 1. It should be noted that this embodiment aims to ensure that the compositing and display tasks of each display node can be processed in parallel with the compositing and display tasks of other display nodes; therefore, the default condition for starting the thread pool is that the number of display nodes is greater than 1.
[0034] If the number of display nodes is greater than 1, it means that the number of displays connected to the current system is greater than 1. The serial synthesis and display method in the prior art will prolong the waiting time of each display, thereby affecting its display frame rate. In this embodiment, as long as the number of displays is greater than 1, a thread pool is started and the number of worker threads in the thread pool is adjusted, which can ensure that the synthesis and display tasks of each display are executed in parallel, shorten the waiting time of each display, and help improve the frame rate.
[0035] When adjusting the number of worker threads in the thread pool based on the quantity, since there may have been many worker threads in the thread pool before, this adjustment is to make the number of worker threads in the thread pool match the number of display nodes.
[0036] Therefore, the number of threads currently required in the thread pool can be determined based on the number of display nodes; based on the number of threads and the number of existing worker threads in the thread pool, the number of worker threads in the thread pool can be increased or decreased to obtain at least one new layer composition thread.
[0037] Specifically, since the system itself has a built-in original layer compositing thread, the number of worker threads in the thread pool can be the difference between the number of display nodes and 1. Each worker thread in the adjusted thread pool is a new layer compositing thread.
[0038] It should be noted that if the number of worker threads in the previous thread pool was greater than this difference, some worker threads will be shut down to reduce the number to this difference; if the number of worker threads in the previous thread pool was less than this difference, some worker threads will be turned on to increase the number to this difference.
[0039] To further reduce the consumption of thread resources, the preset thread pool start condition can also be set to display nodes with a number of display nodes greater than 1 and multiple display nodes with a frequency of composite display tasks greater than a preset frequency value.
[0040] The frequency of composite display tasks refers to the number of composite display tasks that need to be processed per unit of time. A higher frequency indicates a higher need for page refresh by the display node. In multi-screen display scenarios, the monitor corresponding to this display node is usually the user's primary monitor. A lower frequency indicates a lower need for page refresh by the display node, meaning the user doesn't use the monitor corresponding to this display node very often.
[0041] In this embodiment, the preset frequency value can be set according to the customer's application scenario. When adjusting the number of worker threads in the thread pool, the number of worker threads can be adjusted to the number of display nodes whose frequency of synthesizing and sending display tasks is greater than the preset frequency value.
[0042] It should be noted that the number of worker threads in the thread pool here is the difference between the number of display nodes whose frequency of synthesized display tasks is greater than the preset frequency value and 1.
[0043] It should be noted that if you need to close a thread, you must wait until the thread's processing task is completed and delivered before closing it. Of course, when closing the entire thread pool, you also need to wait until the processing tasks of each thread in the thread pool are completed and delivered before closing it.
[0044] Step 102: Send the composite display task to the original layer composite thread or the newly added layer composite thread for processing to obtain the composite result.
[0045] In this step, it can be determined whether the display node corresponding to the composite display task is the first node in the display node tree; if so, the composite display task is sent to the original layer composite thread for processing to obtain the composite result; if not, the composite display task is sent to the newly added layer composite thread for processing to obtain the composite result.
[0046] It should be noted that in the display node tree, the first node is usually the system's default display, which is also usually the display most frequently used by users. In order to improve the user experience, this embodiment allocates the original layer composition thread in the system specifically to this display.
[0047] Therefore, when sending a composite display task, it is possible to first determine whether the display node corresponding to the composite display task is the first node in the display node tree. Each display node has its own identifier, which is also reflected in the display node tree. Therefore, the identifier of the first node in the display node tree can be obtained first, and then compared with the identifier of the display node carried in the composite display task. If they match, it can be determined that it is the composite display task of the first node.
[0048] Step 103: Send the synthesis result to the display node corresponding to the synthesis and display task for display.
[0049] In this step, after obtaining the synthesis result, the process can be implemented using the synthesis result buffer mechanism (where the synthesis result buffer is a mechanism for temporarily storing and transmitting the synthesis result to ensure that the display can refresh smoothly). Specifically, a synthesis completion signal can be sent to the main thread, and the main thread can obtain the synthesis result of the corresponding thread based on the completion signal; and send the synthesis result to the display node corresponding to the synthesis delivery task for display.
[0050] It should be noted that this embodiment has a main thread, which is the core thread responsible for generating the entire interface. After the worker threads in the thread pool obtain the synthesis result, they will send a synthesis completion signal to the main thread. The synthesis completion signal may include the thread identifier and the display node identifier.
[0051] The main thread can obtain the synthesis result of the corresponding thread based on the thread identifier, and send the synthesis result to the corresponding display node for display according to the display node identifier.
[0052] In this embodiment, upon receiving a compositing and display task, the number of worker threads is adjusted based on the number of currently connected display nodes to obtain at least one new layer compositing thread, with a quantity greater than 1. The compositing and display task is then sent to either the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result. The compositing result is then sent to the display node corresponding to the compositing and display task for display. Based on this, this application adjusts the number of worker threads according to the number of display nodes, ensuring that the number of display nodes and worker threads remain consistent. This allows for fully parallel processing of the compositing and display task, and the number of worker threads can be adjusted adaptively when display nodes are added or removed, ensuring that each display node has a worker thread to handle its compositing and display task. This improves the frame rate in multi-screen displays. For 1080P dual-display scenarios, the solution in this embodiment improves the average frame rate by approximately 13 frames, enhancing the user experience.
[0053] Example 2
[0054] Figure 2 This is a schematic diagram of a multi-screen composite display device based on the OpenHarmony system, provided in Embodiment 2 of this application. The multi-screen composite display device based on the OpenHarmony system provided in this embodiment can execute the multi-screen composite display method based on the OpenHarmony system provided in any embodiment of this application, and possesses the corresponding functional modules and beneficial effects of the method. This device can be implemented in software and / or hardware, such as... Figure 2 As shown, the device includes:
[0055] The thread adjustment module 201 is used to increase or decrease the number of working threads according to the number of currently connected display nodes when a composite display task is received, so as to obtain at least one new layer composite thread with a quantity greater than 1.
[0056] The layer compositing module 202 is used to send the compositing and display task to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result.
[0057] The display module 203 is used to send the synthesis result to the display node corresponding to the synthesis display task for display.
[0058] Furthermore, the thread adjustment module is specifically used for:
[0059] Get the number of currently connected display nodes, and start the thread pool if the number meets the preset thread pool start conditions;
[0060] Adjust the number of worker threads in the thread pool based on the quantity to obtain at least one new layer composition thread.
[0061] Furthermore, the default condition for starting the thread pool is that the number of displayed nodes is greater than 1.
[0062] Furthermore, the thread adjustment module is specifically used for:
[0063] The number of threads currently needed in the thread pool is determined based on the number of displayed nodes.
[0064] Based on the number of threads and the number of existing worker threads in the thread pool, the number of worker threads in the thread pool is increased or decreased to obtain at least one new layer composition thread.
[0065] Furthermore, the layer compositing module is specifically used for:
[0066] Determine whether the display node corresponding to the composite display task is the first node in the display node tree;
[0067] If so, the composite display task is sent to the original layer composite thread for processing to obtain the composite result;
[0068] If not, send the composite display task to the newly added layer composite thread for processing to obtain the composite result.
[0069] Furthermore, the thread adjustment module is specifically used for:
[0070] Traverse the display node tree and count the nodes in the display node tree. After the traversal is completed, obtain the number of currently connected display nodes.
[0071] Furthermore, the display module is specifically used for:
[0072] After obtaining the synthesis result, a synthesis completion signal is sent to the main thread, and the main thread obtains the synthesis result of the corresponding thread based on the completion signal;
[0073] The synthesis result is sent to the display node corresponding to the synthesis and display task for display.
[0074] Example 3
[0075] Figure 3 This is a schematic diagram of the structure of a multi-screen composite display device based on the OpenHarmony system provided in Embodiment 4 of this application, as shown below. Figure 3 As shown, the multi-screen compositing and display device based on the OpenHarmony system also includes a processor 310, a memory 320, an input device 330, and an output device 340; the number of processors 310 in the multi-screen compositing and display device based on the OpenHarmony system can be one or more. Figure 3Taking a processor 310 as an example; in a multi-screen compositing and display device based on the OpenHarmony system, the processor 310, memory 320, input device 330, and output device 340 can be connected via a bus or other means. Figure 3 Taking the example of a connection between China and Israel via a bus.
[0076] The memory 320, as a computer-readable storage medium, can be used to store software programs, computer-executable programs, and modules, such as the program instructions / modules corresponding to the multi-screen composite display method based on the OpenHarmony system in this embodiment of the invention. The processor 310 executes the software programs, instructions, and modules stored in the memory 320 to perform various functional applications and data processing of the multi-screen composite display device based on the OpenHarmony system, thereby realizing the aforementioned multi-screen composite display method based on the OpenHarmony system.
[0077] Upon receiving a composite display task, the number of worker threads is increased or decreased based on the number of currently connected display nodes, resulting in at least one new layer composite thread with a quantity greater than 1.
[0078] The compositing and display task is sent to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result;
[0079] The synthesis result is sent to the display node corresponding to the synthesis and display task for display.
[0080] Furthermore, based on the number of currently connected display nodes, worker threads are added or removed to obtain at least one new layer composition thread, including:
[0081] Get the number of currently connected display nodes, and start the thread pool if the number meets the preset thread pool start conditions;
[0082] Adjust the number of worker threads in the thread pool based on the quantity to obtain at least one new layer composition thread.
[0083] Furthermore, the default condition for starting the thread pool is that the number of displayed nodes is greater than 1.
[0084] Furthermore, the number of worker threads in the thread pool is adjusted based on the quantity to obtain at least one new layer composition thread, including:
[0085] The number of threads currently needed in the thread pool is determined based on the number of displayed nodes.
[0086] Based on the number of threads and the number of existing worker threads in the thread pool, the number of worker threads in the thread pool is increased or decreased to obtain at least one new layer composition thread.
[0087] Furthermore, the compositing task is sent to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result, including:
[0088] Determine whether the display node corresponding to the composite display task is the first node in the display node tree;
[0089] If so, the composite display task is sent to the original layer composite thread for processing to obtain the composite result;
[0090] If not, send the composite display task to the newly added layer composite thread for processing to obtain the composite result.
[0091] Furthermore, obtain the number of currently connected display nodes, including:
[0092] Traverse the display node tree and count the nodes in the display node tree. After the traversal is completed, obtain the number of currently connected display nodes.
[0093] Furthermore, the synthesis result is sent to the display node corresponding to the synthesis and display task for display, including:
[0094] After obtaining the synthesis result, a synthesis completion signal is sent to the main thread, and the main thread obtains the synthesis result of the corresponding thread based on the completion signal;
[0095] The synthesis result is sent to the display node corresponding to the synthesis and display task for display.
[0096] The memory 320 may primarily include a program storage area and a data storage area. The program storage area may store the operating system and at least one application program required for a given function; the data storage area may store data created based on terminal usage. Furthermore, the memory 320 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory, or other non-volatile solid-state storage device. In some instances, the memory 320 may further include memory remotely located relative to the processor 310, which can be connected via a network to a multi-screen display device based on the OpenHarmony system. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0097] Example 4
[0098] Embodiment 4 of this application also provides a storage medium containing computer-executable instructions. When executed by a computer processor, the computer-executable instructions are used to perform a multi-screen composite display method based on the OpenHarmony system. The method includes:
[0099] Upon receiving a composite display task, the number of worker threads is increased or decreased based on the number of currently connected display nodes, resulting in at least one new layer composite thread with a quantity greater than 1.
[0100] The compositing and display task is sent to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result;
[0101] The synthesis result is sent to the display node corresponding to the synthesis and display task for display.
[0102] Furthermore, based on the number of currently connected display nodes, worker threads are added or removed to obtain at least one new layer composition thread, including:
[0103] Get the number of currently connected display nodes, and start the thread pool if the number meets the preset thread pool start conditions;
[0104] Adjust the number of worker threads in the thread pool based on the quantity to obtain at least one new layer composition thread.
[0105] Furthermore, the default condition for starting the thread pool is that the number of displayed nodes is greater than 1.
[0106] Furthermore, the number of worker threads in the thread pool is adjusted based on the quantity to obtain at least one new layer composition thread, including:
[0107] The number of threads currently needed in the thread pool is determined based on the number of displayed nodes.
[0108] Based on the number of threads and the number of existing worker threads in the thread pool, the number of worker threads in the thread pool is increased or decreased to obtain at least one new layer composition thread.
[0109] Furthermore, the compositing task is sent to the original layer compositing thread or the newly added layer compositing thread for processing to obtain the compositing result, including:
[0110] Determine whether the display node corresponding to the composite display task is the first node in the display node tree;
[0111] If so, the composite display task is sent to the original layer composite thread for processing to obtain the composite result;
[0112] If not, send the composite display task to the newly added layer composite thread for processing to obtain the composite result.
[0113] Furthermore, obtain the number of currently connected display nodes, including:
[0114] Traverse the display node tree and count the nodes in the display node tree. After the traversal is completed, obtain the number of currently connected display nodes.
[0115] Furthermore, the synthesis result is sent to the display node corresponding to the synthesis and display task for display, including:
[0116] After obtaining the synthesis result, a synthesis completion signal is sent to the main thread, and the main thread obtains the synthesis result of the corresponding thread based on the completion signal;
[0117] The synthesis result is sent to the display node corresponding to the synthesis and display task for display.
[0118] Of course, the computer-executable instructions provided in the embodiments of this application are not limited to the above-described method operations, but can also execute related operations in the multi-screen composite display method based on the OpenHarmony system provided in any embodiment of this application.
[0119] Based on the above description of the implementation methods, those skilled in the art can clearly understand that this application can be implemented using software and necessary general-purpose hardware, and of course, it can also be implemented using hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as a computer floppy disk, read-only memory (ROM), random access memory (RAM), flash memory, hard disk, or optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods of the various embodiments of this application.
[0120] It is worth noting that in the embodiments of the search device described above, the various units and modules included are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be achieved; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the scope of protection of this application.
[0121] Note that the above description is merely a preferred embodiment and the technical principles employed in this application. Those skilled in the art will understand that this application is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of this application. Therefore, although this application has been described in detail through the above embodiments, this application is not limited to the above embodiments. Many other equivalent embodiments may be included without departing from the concept of this application, and the scope of this application is determined by the scope of the appended claims.
Claims
1. A multi-screen synthesis display method based on an OpenHarmony system, characterized in that, The method comprises: In the case of receiving a synthesis display task, the number of working threads is increased or decreased according to the number of currently connected display nodes, at least one new layer synthesis thread is obtained, and the number of display nodes and the number of working threads are kept consistent, the number being greater than 1; wherein the synthesis display task is a task of synthesizing each layer of a display interface drawn and then sending to the display driver of the display node for display; the synthesis display task is sent to the original layer synthesis thread or the new layer synthesis thread for processing to obtain a synthesis result; The synthesis result is sent to the display node corresponding to the synthesis display task for display; The number of working threads is increased or decreased according to the number of currently connected display nodes to obtain at least one new layer synthesis thread, comprising: The number of currently connected display nodes is obtained, and a thread pool is started in the case that the number meets a preset thread pool starting condition; The number of working threads in the thread pool is adjusted according to the number to obtain at least one new layer synthesis thread; The number of working threads in the thread pool is adjusted according to the number to obtain at least one new layer synthesis thread, comprising: The number of threads currently required in the thread pool is determined according to the number of display nodes; The number of working threads in the thread pool is increased or decreased according to the number of threads and the number of existing working threads in the thread pool to obtain at least one new layer synthesis thread.
2. The method of claim 1, wherein, The preset thread pool starting condition is that the number of display nodes is greater than 1.
3. The method of claim 1, wherein, The synthesis display task is sent to the original layer synthesis thread or the new layer synthesis thread for processing to obtain a synthesis result, comprising: It is judged whether the display node corresponding to the synthesis display task is the first node in the display node tree; If yes, the synthesis display task is sent to the original layer synthesis thread for processing to obtain a synthesis result; If not, the synthesis display task is sent to the new layer synthesis thread for processing to obtain a synthesis result.
4. The method of claim 1, wherein, The number of currently connected display nodes is obtained, comprising: The display node tree is traversed, and the nodes in the display node tree are counted, and the number of currently connected display nodes is obtained after the traversal is completed.
5. The method of claim 1, wherein, The synthesis result is sent to the display node corresponding to the synthesis display task for display, comprising: After the synthesis result is obtained, a synthesis completion signal is sent to the main thread, and the main thread obtains the synthesis result of the corresponding thread according to the completion signal; The synthesis result is sent to the display node corresponding to the synthesis display task for display.
6. A multi-screen synthesis display device based on an OpenHarmony system, characterized in that, Comprise: The thread adjustment module is used for increasing or decreasing the number of working threads according to the number of currently connected display nodes in the case of receiving a synthesis display task, obtaining at least one new layer synthesis thread, and keeping the number of display nodes and the number of working threads consistent, the number being greater than 1; wherein the synthesis display task is a task of synthesizing each layer of a display interface drawn and then sending to the display driver of the display node for display; The layer synthesis module is configured to send the synthesis display task to the original layer synthesis thread or the new layer synthesis thread for processing to obtain a synthesis result. The display module is configured to send the synthesis result to a display node corresponding to the synthesis display task for display. The thread adjustment module is configured to: obtain a number of currently connected display nodes, and start a thread pool when the number meets a preset thread pool starting condition; adjust a number of worker threads in the thread pool according to the number to obtain at least one new layer synthesis thread; The adjustment of the number of worker threads in the thread pool according to the number to obtain at least one new layer synthesis thread includes: determining a current required number of threads in the thread pool according to the number of display nodes; increasing or decreasing the worker threads in the thread pool according to the number of threads and a number of existing worker threads in the thread pool to obtain at least one new layer synthesis thread.
7. A multi-screen synthesis display device based on an OpenHarmony system, characterized in that, The system includes: one or more processors; a storage device configured to store one or more programs, when the one or more programs are executed by the one or more processors, the one or more processors implement the OpenHarmony system-based multi-screen synthesis display method of any one of claims 1-5.
8. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor to implement the OpenHarmony system-based multi-screen synthesis display method of any one of claims 1-5.
Citation Information
Patent Citations
Multi-screen management method and device, electronic equipment and storage medium
CN113377315A