Data table processing method, device, equipment and storage medium
By splitting the data table update operation task into independent subtasks in the visible area and non-visual area, synchronous and asynchronous updates of the data table are achieved, solving the problem of lag during the data table update process and improving the update efficiency and smoothness.
Patent Information
- Application Number
- CN202210816686.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-12
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2042-07-12
AI Technical Summary
The data table is prone to lag during the update process, resulting in low update efficiency.
The update operation task is split into independent subtasks associated with the visible area and the non-visible area. By synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data in a single update process is reduced.
It reduces the computing resource consumption during the data table update process, improves the update fluency and efficiency, quickly displays the updated data content in the visible area, and improves the efficiency of human-computer interaction.
Smart Images

Figure CN117009359B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of Internet technology, and in particular to a data table processing method, apparatus, device and storage medium. Background Art
[0002] A data table is a database-like spreadsheet that uses fields to describe the subject information or value range of a row of data records, or a column of data records, providing a neatly organized data structure. Therefore, data tables are widely used in finance, learning, healthcare, and other fields. For example, a company can use a data table to collect revenue information over a period of time, or a student can use a data table to collect weekly class schedules. Currently, when updating data in a data table, the table is prone to freezing and other issues, resulting in relatively low update efficiency. Summary of the Invention
[0003] Embodiments of the present application provide a data table processing method, apparatus, device, and storage medium to reduce the probability of data table freezes during update and improve the update efficiency of the data table.
[0004] An embodiment of the present application provides a data table processing method, including:
[0005] Get the update operation task about the target data table;
[0006] If the update operation task is associated with both the visible area and the non-visible area of the target data table, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the visible area is the area where the data content in the target data table is in a visible state, and the non-visible area is the area where the data content in the target data table is in an invisible state;
[0007] updating the data content in the visible area according to the first update operation subtask;
[0008] If the data content in the visible area has been updated, the first task processing status of the terminal when the data content in the visible area has been updated is obtained, and the data content in the non-visible area is updated according to the second update operation subtask and the first task processing status; the terminal is a terminal used to update the target data table.
[0009] In one aspect, an embodiment of the present application provides a data table processing device, including:
[0010] The acquisition module is used to obtain the update operation tasks on the target data table;
[0011] a splitting module for splitting the update operation task, if the update operation task is associated with both a visible area and a non-visible area of the target data table, to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the visible area is an area in the target data table where data content in a visible state is located, and the non-visible area is an area in the target data table where data content in an invisible state is located;
[0012] A first updating module, configured to update the data content in the visible area according to the first updating operation subtask;
[0013] The second update module is used to obtain the first task processing status of the terminal when the data content in the visible area has been updated, and update the data content in the non-visible area according to the second update operation subtask and the first task processing status; the terminal is a terminal for updating the target data table.
[0014] On one hand, an embodiment of the present application provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the method when executing the computer program.
[0015] On the one hand, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the method described are implemented.
[0016] On the one hand, an embodiment of the present application provides a computer program product, including a computer program, which implements the steps of the method when executed by a processor.
[0017] In the present application, when an update operation task associated with both the visible area and the non-visible area of the target data table is obtained, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. In other words, independent update operation subtasks are maintained for the visible area and the non-visible area. In the process of updating the data content of the visible area or the non-visible area, it is not necessary to scan the entire amount of data content in the data table to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the consumption of computing resources during the data table update process and improving the efficiency of the data table update. Further, the data content in the visible area is synchronously updated according to the first update operation subtask, and the data content in the non-visible area is asynchronously updated according to the second update operation subtask. Here, synchronous update refers to immediately updating the data content in the visible area according to the first update operation subtask, and asynchronous update refers to the first task processing state based on the terminal when the data content in the visible area has completed the update, and the second update operation subtask updates the data content in the non-visible area, that is, asynchronous update is a non-immediate update method. In other words, by synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated during a single update process can be reduced, which can reduce the probability of data table jams and improve the update smoothness and efficiency of the data table. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0019] Figure 1 This is a schematic diagram of the architecture of a data table processing system provided by this application;
[0020] Figure 2 This is a schematic diagram of the interface of the visible area and non-visible area of a data table provided by this application;
[0021] Figure 3 This application provides a schematic diagram of an interactive scenario for updating a target data table;
[0022] Figure 4 This is a flow chart of a data table processing method provided by this application;
[0023] Figure 5 This is a flow chart of a data table processing method provided by this application;
[0024] Figure 6 This is a flow chart of a data table processing method provided by this application;
[0025] Figure 7 This is a schematic diagram of a scenario for updating data content in a non-visible area provided by this application;
[0026] Figure 8 This is a flowchart of an asynchronous task management storage area managing tasks to be executed provided by this application;
[0027] Figure 9 This is a schematic diagram of a scenario for updating data content in a visible area and a non-visible area of a target data table provided by the present application;
[0028] Figure 10 This is a schematic diagram of the structure of a data table processing device provided in an embodiment of the present application;
[0029] Figure 11 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0030] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0031] In order to facilitate a clearer understanding of the present application, a data table processing system that implements the data table processing method of the present application is first introduced. Figure 1 As shown, the data table processing system includes a server 10 and a terminal cluster. The terminal cluster may include one or more terminals. The number of terminals is not limited here. Figure 1 As shown, the terminal cluster can specifically include terminal 1, terminal 2, ..., terminal n; it can be understood that terminal 1, terminal 2, terminal 3, ..., terminal n can all be connected to the server 10 through the network, so that each terminal can exchange data with the server 10 through the network connection.
[0032] The terminal is installed with a data table platform that provides data table services for users. The data table platform may include applets, web pages or applications associated with the data table, etc. Users can create data tables, view data tables, update data tables, etc. through the data table platform installed in the terminal. The data table here is a database-type electronic spreadsheet, which can also be called a smart sheet. It describes the subject information or value range of a row of data records through fields, or describes the subject information or value range of a column of data records through fields. It can provide a data structure with regular rows and columns. The data table includes data content, and the data content includes at least one of data records and fields. The fields are used to describe the subject information or value range of data records, etc. The data content can also include data table metadata (such as table ID, table title, etc.) and display view data (such as display view name, display view ID, display view type, and display view attributes, etc.). In this application, a row of data in a data table can be collectively referred to as a piece of data content.
[0033] In one embodiment, the fields in a data table can be arranged in rows, that is, the fields in the data table are arranged in the same row. In this case, a field in the data table is used to describe the subject information or value range of the data record in the column where the field is located. For example, assuming that the data table is Data Table 1 that collects student information, the arrangement of the fields and data records of Data Table 1 is shown in Table 1 below:
[0034] Table 1
[0035] Name gender …… Xiao Wang male …… Xiao Li female …… …… …… ……
[0036] As you can see, the fields in Data Table 1 include name, gender, etc. The various fields in Data Table 1 are arranged in the first row of Data Table 1. The name field is located in the first column of the first row of Data Table 1. The name field is used to describe the data records in the first column of Data Table 1 as the names of students. For example, Xiao Wang in the first column of the second row of Data Table 1 and Xiao Li in the second column of the second row are both students' names. The gender field in Data Table 1 is located in the second column of the first row of Data Table 1. The gender field is used to describe the data records in the second column of Data Table 1 as the gender of students. For example, "Male" in the second column of the second row of Data Table 1 is Xiao Wang's gender, and "Female" in the third column of the second row is Xiao Li's gender.
[0037] In one embodiment, the fields in a data table can be arranged in the form of columns, that is, the fields in the data table are arranged in the same column. In this case, a field in the data table is used to describe the subject information or value range of the data record in the row where the field is located. For example, assuming that the data table is Data Table 2 that collects student information, the arrangement of the fields and data records of Data Table 2 is shown in Table 2 below:
[0038] Table 2
[0039] Name Xiao Wang Xiao Li …… gender male female …… …… …… …… ……
[0040] It can be seen that the fields in Data Table 2 include name, gender, ..., and each field of Data Table 2 is arranged in the first column of Data Table 2. The name field is located in the first row and first column of Data Table 2. The name field is used to describe the data records in the first row of Data Table 2 as the names of students, such as Xiao Wang in the first row and second column of Data Table 2 and Xiao Li in the first row and second column are both students' names. The gender field in Data Table 2 is located in the second row and first column of Data Table 2. The gender field is used to describe the data records in the second row of Data Table 2 as the gender of students, such as the male in the second example of the second row of Data Table 2 is the gender of Xiao Wang, and the female in the second row and third column is the gender of Xiao Li. It is understandable that the data records and fields in the data table can also be arranged in other ways, and this application does not limit this.
[0041] It is understood that the data tables in this application can refer to collaborative data tables or non-collaborative data tables. Collaborative data tables refer to data tables that support at least two users performing simultaneous online update operations on them, while non-collaborative data tables refer to data tables that support a single user performing simultaneous online update operations on them. The update operation here can refer to operations such as deleting or modifying the data content in the data table, or the update operation can refer to updating the row height, column width, line wrapping method, etc. of the data content.
[0042] It is understandable that the data table includes multiple data contents. When the terminal displays the data table, it can usually only display part of the data content in the data table in the display interface of the data table platform. The user can display the remaining data content in the data table by performing a touch operation on the data table. In this application, the data content displayed in the display interface of the data table platform in the data table is referred to as the data content in a visible state, and the area where the data content in the data table is located is called the visible area, that is, the data content in a visible state refers to the data content that can currently be seen by the user. The data content in the data table that is not displayed in the display interface of the data table platform is called the data content in an invisible state, and the area where the data content in the data table is located is called the non-visible area, that is, the data content in an invisible state refers to the data content that cannot currently be seen by the user. The size of the visible area and the non-visible area can be determined according to the size of the display interface used to display the data table, and the magnification or reduction multiple of the data table; the visible area and the non-visible area of the data table change dynamically as the user touches the data table.
[0043] For example, Figure 2As shown, at time T, the data table 10a includes a visible area 11a, a non-visible area 12a and a non-visible area 13a, wherein the visible area 11a is located before the non-visible area 12a and the non-visible area 13a, that is, the vertical arrangement identifier of the data content in the visible area 11a is smaller than the vertical arrangement identifier (i.e., row identifier) of the data content in the non-visible area 12a, and the vertical arrangement identifier of the data content in the non-visible area 12a is larger than the vertical arrangement identifier of the data content in the non-visible area 13a. When the terminal detects a touch operation on the data table 10a, the touch operation is a sliding operation downward (i.e., along the increasing direction of the vertical arrangement identifier), and the visible area and non-visible area of the data table 10a are adjusted according to the touch operation to obtain the visible area and non-visible area of the data table 10a at time T+1. As shown Figure 2 In the example, data table 10a at time T+1 includes a non-visible area 14b, a visible area 15b, and a non-visible area 16b. Visible area 15b is located between non-visible area 14b and non-visible area 16b, that is, the vertical arrangement identifier of the data content in visible area 15b is greater than the vertical arrangement identifier of the data content in non-visible area 14b, and the vertical arrangement identifier of the data content in visible area 15b is less than the vertical arrangement identifier of the data content in non-visible area 16b. In particular, since the data content of non-visible area 12a and non-visible area 13a is updated in the same manner, non-visible area 12a and non-visible area 13a are usually treated as one non-visible area.
[0044] It is understandable that server 10 can refer to a device used to provide back-end services for the data table platform. For example, server 10 can be used to store the source data and data content of the data table. The source data of the data table includes the arrangement method, arrangement mark, font, color, font size and other information of the data content.
[0045] Among them, the server can be an independent physical server, or a server cluster or distributed system composed of at least two physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. The terminal can specifically refer to a smart phone, tablet computer, laptop computer, desktop computer, smart speaker, screen speaker, smart watch, etc., but is not limited to this. Each terminal and server can be directly or indirectly connected through wired or wireless communication. At the same time, the number of terminals and servers can be one or at least two, and this application does not limit this.
[0046] It is understandable that based on Figure 1 The data table processing system shown can realize the update of the data table. The update process of the data table includes synchronous update of the data content in the visible area of the data table and asynchronous update of the data content in the non-visible area of the data table. This can reduce the amount of data updated in a single time, reduce the probability of data table jamming, and improve the update efficiency of the data table. Specifically, Figure 3 As shown, Figure 3 The server 30a in the example may refer to Figure 1 Server 10 in Figure 3 The terminal 31a in the example may refer to Figure 1 For any terminal in the data table, the updating process may include the following steps S1 to S6:
[0047] S1. Terminal 31a generates a request to obtain a target data table and sends it to server 30a. The request carries the identifier of the data table and the identifier of the display view type of the data table. The display view type is a parameter used to describe the arrangement of data records and fields in the data table. Display view types include board view type, table view type, album view type, and Gantt view type. After receiving the request, server 30a can determine the data table requested by the terminal based on the data table identifier, which can be called the target data table. It then obtains the source data of the target data table from the server's local storage and returns the source data of the target data table to terminal 31a.
[0048] S2, the terminal 31a displays the target data table. After receiving the source data of the target data table, the terminal can display the target data table in the display interface of the data table platform according to the source data. The area where the data content of the target data table displayed on the display interface is located is called the visible area, and the area where the data content of the target data table not displayed on the display interface is located is called the non-visible area. Figure 3 The target data table includes a visible area 32b and a non-visible area 33b, and the vertical arrangement mark of the data content in the visible area 32b is smaller than the vertical arrangement mark of the data content in the non-visible area 33b.
[0049] S3. The terminal 31a obtains an update operation task regarding the target data table.
[0050] It is understandable that the update operation task can be a task associated with the rendering layer of the target data table. The rendering layer refers to a module for converting the data of the data layer of the target data table into the data that needs to be rendered and rendering the final presentation form (table). The data layer refers to a module for managing and maintaining the data (such as data records, fields) in all cells in the target data table. The task type of the update operation task can include a global task type and a local task type. The global task type refers to the task type corresponding to the operation update task acting on the visible area and non-visible area of the target data table, that is, the update operation task of the global task type is associated with both the visible area and the non-visible area of the target data table. For example, the update operation task of the global task type may include but is not limited to: adjusting the column width of a column of the target data table, performing an automatic line break operation on the data records under a field in the target data table (that is, performing an automatic line break operation on a column of the target data table), etc. The local task type refers to the task type corresponding to the update operation task acting on the visible area or non-visible area of the target data table, that is, the update operation task of the local task type is associated with the visible area or non-visible area of the target data table. For example, an update operation task of a local task type may include, but is not limited to: performing an automatic line break operation on the data content of a row of the target data table (i.e., all data records in a row), performing an automatic line break operation on part of the data records in a row of the target data table, adjusting the row height of a row of the target data table, and performing an overwrite operation / or a hide operation on the data content of a row of the target data table. An overwrite operation refers to when the data record of cell A exceeds the current cell, based on whether the adjacent cells in the row where cell A is located have data records and the alignment direction of the row where cell A is located, the data record of cell A is expanded into the adjacent cells to cover the adjacent cells. A hide operation refers to when the data record of cell B exceeds the current cell, partially hiding the data record in cell B.
[0051] It is understandable that if the target data table is a non-collaborative data table, the update operation task can be generated based on the user performing an update operation on the terminal 31a; if the target data table is a collaborative data table, the update operation task can be generated based on the user performing an update operation on the terminal 31a, or the update operation task can be sent by a collaborative terminal to terminal 31a, and a collaborative terminal refers to a terminal other than terminal 31a that has editing authority over the target data table.
[0052] S4. If the update operation task is associated with both the visible area and the non-visible area, the terminal 31a splits the update operation task to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the first update operation subtask is used to indicate an update of the data content in the visible area, and the second update operation subtask is used to indicate an update of the data content in the non-visible area.
[0053] S5. Terminal 31a updates the data content in the visible area according to the first update operation subtask. When the data content in the visible area has been updated, the first task processing status of terminal 31a when the data content in the visible area has been updated is obtained. The first task processing status is used to reflect whether the terminal has any remaining tasks to be executed when the data content in the visible area has been updated. The remaining tasks to be executed here are the tasks to be executed in the terminal except the second update operation subtask.
[0054] S6. Terminal 31a updates the data content in the non-visible area according to the first task processing status and the second update operation subtask. For example, when the first task processing status indicates that all remaining tasks to be executed on the terminal have been completed, that is, terminal 31a is in an idle state, the data content in the non-visible area can be immediately updated according to the second update operation subtask. When the first task processing status indicates that there are remaining tasks to be executed that have not been executed on the terminal, that is, terminal 31a is in a non-idle state, the remaining tasks to be executed can be executed according to their task types, and the data content in the non-visible area can be immediately updated according to the second update operation subtask.
[0055] In summary, by synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated in a single update process is reduced, which can reduce the probability of data table lag and improve the smoothness and efficiency of data table updates. At the same time, by prioritizing the update of data content in the visible area, the updated data content in the visible area is more quickly displayed to the user, improving the efficiency of human-computer interaction.
[0056] Further, see Figure 4 , is a flow chart of a data table processing method provided in an embodiment of the present application. Figure 4 As shown, this method can be Figure 1 The terminal can also be executed by Figure 1 It can also be executed by the server in Figure 1 The terminal and server in the embodiment are executed together. The devices used to execute the method in this application can be collectively referred to as computer devices. The data table processing method may include the following steps S101 to S104:
[0057] S101: Acquire an update operation task on a target data table.
[0058] In this application, if an update operation on a target data table is detected, an update operation task regarding the target data table is generated; alternatively, the computer device can obtain an update operation task regarding the target data table from a collaborative terminal, where the task type of the update operation task is the above-mentioned global task type or local task type.
[0059] S102. If the update operation task is associated with both the visible area and the non-visible area of the target data table, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the visible area is the area where the data content in the target data table is in a visible state, and the non-visible area is the area where the data content in the target data table is in an invisible state.
[0060] In the present application, if the update operation task is only associated with the visible area of the target data table, indicating that the task type of the update operation task is a local task type, the computer device can update the data content of the visible area according to the update operation task; if the update operation task is only associated with the non-visible area of the target data table, indicating that the task type of the update operation task is a local task type, the computer device can wait for the update operation task related to the visible area to be executed, or, when the terminal is in an idle state, update the data content in the non-visible area according to the update operation task. If the update operation task is associated with both the visible area and the non-visible area of the target data table, indicating that the task type of the update operation task is a global task type, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. The first update operation subtask here is used to indicate that the data content in the visible area is updated, and the second update operation subtask is used to indicate that the data content in the non-visible area is updated. The first update operation subtask and the second update operation subtask are independent of each other. By splitting the update operation task, a first update operation subtask and a second update operation subtask that are independent of each other are obtained, so that when the computer device updates the visible area or the non-visible area, it is not necessary to scan the entire data content in the data table (i.e., the target data table) to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the computing resource consumption during the data table update process and improving the efficiency of the data table update.
[0061] For example, the target data table is a student score table, and the fields of the student score table include student name, age, score, etc. These fields are arranged in rows, that is, data records under the same field belong to the same column. If the update operation task is to adjust the column width of the column where the score field is located, that is, the update operation task is used to indicate the adjustment of the column width of the cells in the column corresponding to the score field in each row of the target data table, that is, the update operation task is associated with both the visible area and the non-visible area, the computer device can split the update operation task into a first update operation subtask associated with the visible area, and a second update operation subtask associated with the non-visible area, the first update operation subtask is used to indicate the adjustment of the column width of the cells in the column corresponding to the score field in each row in the visible area, and the second update operation subtask is used to indicate the adjustment of the column width of the cells in the column corresponding to the score field in each row in the non-visible area. For example, the score field of the student score sheet is located in the first row and third column of the student score sheet. Assuming that the visible area includes the data content of the first to fiftieth rows of the student score sheet, and the non-visible area includes the data content of the fifty-first to one hundred and second rows of the student score sheet, then the first update operation subtask is used to indicate the adjustment of the column width of the cells in the third column of each row from the first to the fiftieth rows of the student score sheet, and the second update operation subtask is used to indicate the adjustment of the column width of the cells in the third column of each row from the fifty-first to the one hundred and twentieth rows of the student score sheet.
[0062] S103: Update the data content in the visible area according to the first update operation subtask.
[0063] In the present application, the computer device can immediately update the data content in the visible area according to the first update operation subtask, which is conducive to quickly displaying the updated data content in the visible area to the user and improving the efficiency of human-computer interaction.
[0064] It is understandable that the computer device can update the data content in the visible area in any of the following two ways: Way 1: The computer device can obtain the increasing direction of the arrangement identifier of the data content in the visible area in the target direction, and update the data content in the visible area in sequence according to the first update operation subtask according to the increasing direction of the arrangement identifier of the data content in the visible area in the target direction. The target direction here can refer to the vertical direction of the target data table, and the arrangement identifier in the target direction can refer to the row identifier. Way 2: The computer device can first update the data content located at the center position in the visible area according to the first update operation subtask, and then alternately update the remaining data content in the visible area according to the first update operation subtask, and the remaining data content is the data content in the visible area except the data content located at the center position. The implementation method for alternatingly updating the remaining data content in the visible area here can be any one of the following four implementation methods: Method 1: First, according to the first update operation subtask, update the a data content with a row identifier greater than the row identifier of the data content at the center position in the visible area. Then, according to the first update operation subtask, update the b data content with a row identifier less than the row identifier of the data content at the center position in the visible area. And so on, until the data in the visible area is updated. a and b are positive integers greater than or equal to 1. a and b are both less than N. N is the number of data contents with a row identifier less than the row identifier of the data content at the center position in the visible area. a and b can be the same or different. Method 2: First, according to the first update operation subtask, update the b data content with a row identifier less than the row identifier of the data content at the center position in the visible area. Then, according to the first update operation subtask, update the a data content with a row identifier greater than the row identifier of the data content at the center position in the visible area. And so on, until the data in the visible area is updated. Method 3: First, according to the first update operation subtask, update all data contents in the visible area whose row identifiers are greater than the row identifiers of the data contents at the center position. If all data contents in the visible area whose row identifiers are greater than the row identifiers of the data contents at the center position have been updated, then according to the first update operation subtask, update all data contents in the visible area whose row identifiers are greater than the row identifiers of the data contents at the center position. Method 4: First, according to the first update operation subtask, update all data contents in the visible area whose row identifiers are greater than the row identifiers of the data contents at the center position. If all data contents in the visible area whose row identifiers are less than the row identifiers of the data contents at the center position have been updated, then according to the first update operation subtask, update all data contents in the visible area whose row identifiers are greater than the row identifiers of the data contents at the center position.
[0065] S104. If the data content in the visible area has been updated, obtain the first task processing status of the terminal when the data content in the visible area has been updated, and update the data content in the non-visible area according to the second update operation subtask and the first task processing status.
[0066] In the present application, if the data content in the visible area has been updated, the computer device can obtain the first task processing status of the terminal when the data content in the visible area has been updated. The first task processing status here is used to reflect whether there are any remaining tasks to be executed when the data content in the visible area of the terminal has been updated; further, according to the second update operation subtask and the first task processing status, the data content in the non-visible area is updated. In other words, the data content in the non-visible area will not be updated until the data content in the visible area has been updated, that is, the data content in the non-visible area is updated asynchronously. By synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated in a single update process is reduced, the probability of data table jams can be reduced, and the update smoothness and update efficiency of the data table can be improved.
[0067] For example, Figure 5As shown, the update process of the target data table in the present application includes the following steps S50a to S53a: S50a, large task slicing management; the large task slicing management here refers to when the update operation task of the target data table is associated with both the visible area and the non-visible area, the operation scope of the update operation task is separated to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. S51a, calculation update, the calculation update here can refer to immediately updating the data content in the visible area according to the first update operation subtask to obtain the updated data content in the visible area, and then rendering the updated data content in the visible area according to the row height, column width, color, font, line frame, etc. of the row where the updated data content in the visible area is located to obtain the rendered data content in the visible area, and using the rendered data content in the visible area to replace the data content before the update in the visible area. S52a, management of the area to be updated, that is, treating the non-visible area as the area to be updated, and asynchronously pulling the second update operation subtask when the data content in the visible area has been updated. S53a. Calculate and update the data content in the non-visible area. It is understood that the calculation and update of the data content in the non-visible area includes: obtaining a first task processing state when the terminal has completed updating the data content in the visible area, updating the data content in the non-visible area (i.e., the area to be updated) according to the first task processing state and the second update operation subtask, obtaining the updated data content in the non-visible area, and when the non-visible area meets the rendering conditions, rendering the updated data content in the non-visible area according to the row height, column width, color, font, line frame, etc. of the row where the updated data content in the non-visible area is located, obtaining the rendered data content in the non-visible area, and replacing the data content in the non-visible area before the update with the rendered data content in the non-visible area. The non-visible area meeting the rendering conditions may mean that part or all of the data content in the non-visible area is visible after being adjusted; or the non-visible area meeting the rendering conditions may mean that the terminal is in an idle state when the data content in the non-visible area is updated.
[0068] It is understandable that the above-mentioned updating of the data content in the non-visible area according to the second update operation subtask and the first task processing status includes: if the first task processing status indicates that the remaining tasks to be executed in the terminal have been completed, it means that the terminal is in an idle state at this time, and therefore, the computer device can immediately update the data content in the non-visible area according to the second update operation subtask. The remaining tasks to be executed here are the tasks to be executed in the terminal other than the second update operation subtask. Specifically, the remaining tasks to be executed may refer to tasks associated with the target data table, or the remaining tasks to be executed may refer to tasks not associated with the target data table, such as opening a new data table, etc. If the first task processing status indicates that there are remaining tasks to be executed in the terminal that have not been completed, indicating that the terminal is not in an idle state at this time, then the task type of the remaining tasks to be executed is obtained, and the remaining tasks to be executed are executed according to the task type of the remaining tasks to be executed, and the data content in the non-visible area is updated according to the second update operation subtask. By updating the data content in the non-visible area according to the first task processing status and the second update operation subtask, this can avoid the simultaneous execution of too many tasks during the update process of the non-visible area, causing the target data table to appear stuck, and improve the update smoothness and update efficiency of the target data table.
[0069] It is understandable that the above-mentioned execution of the remaining tasks to be executed according to the task type of the remaining tasks to be executed, and updating the data content in the non-visible area according to the second update operation subtask, includes: if the task type of the remaining tasks to be executed is a task type not associated with the non-visible area, indicating that the remaining tasks to be executed and the second update operation subtask are independent of each other, such as the remaining tasks to be executed can refer to tasks to be executed related to the visible area, or tasks to be executed that are not related to the target data table (such as opening a new data table), etc. At this time, the computer device can determine the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively. If the execution priority of the remaining tasks to be executed is higher than the execution priority of the second update operation subtask, the remaining tasks to be executed can be executed first, and then the data content in the non-visible area is updated according to the second update operation subtask. If the execution priority of the remaining tasks to be executed is lower than the execution priority of the second update operation subtask, the data content in the non-visible area can be updated first according to the second update operation subtask, and then the remaining tasks to be executed are executed. By executing the remaining tasks to be executed in sequence according to their corresponding execution priorities, and updating the data content in the non-visible area according to the second update operation subtask, the remaining tasks to be executed and the second update operation subtask are executed asynchronously, thereby reducing the probability of the target data table being stuck and improving the update smoothness and update efficiency of the target data table.
[0070] Furthermore, if the task type of the remaining tasks to be executed is a task type associated with the non-visible area, it indicates that the remaining tasks to be executed have a certain connection with the second update operation subtask, such as the remaining tasks to be executed and the second update operation subtask may refer to multiple consecutive operations triggered by the user on the target data table, or the remaining tasks to be executed and the second update operation subtask may refer to multiple users performing editing operations on the target data table. In this case, the computer device can merge the remaining tasks to be executed with the second update operation subtask to obtain a merged task to be executed, and update the data content in the non-visible area according to the merged task to be executed. By merging the second update operation subtask and the remaining tasks to be executed, it is beneficial to reduce the computing resource consumption of the computer device, reduce the probability of the target data table being stuck when multiple users perform large-scale editing operations on the target data table at the same time, or when the same user triggers multiple consecutive operations on the target data table, and improve the update smoothness and update efficiency of the target data table.
[0071] It is understandable that the above determination of the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively includes: if the task type of the remaining tasks to be executed is the first task type, or the second task type, that is, the task type of the remaining tasks to be executed is an interactive type that is not related to the non-visible area, such as opening a new data table, opening a new web page, etc., to change the data records in the visible area; or, the task type of the remaining tasks to be executed is a non-interactive task type related to the visible area, such as storing or reporting the data content in the visible area, then the computer device can determine the first execution priority as the execution priority of the remaining tasks to be executed, and determine the second execution priority as the execution priority of the second update operation subtask. In other words, the execution priority of tasks of the interactive task type, and the execution priority of tasks associated with the visible area, are higher than the execution priority of tasks associated with the non-visible area, which is conducive to quickly presenting the updated data content in the visible area to the user and improving the efficiency of human-computer interaction.
[0072] Furthermore, if the task type of the remaining task to be executed is the third task type, the corresponding generation time of the remaining task to be executed and the second update operation subtask is obtained, and the execution priority of the remaining task to be executed is determined according to the generation time of the remaining task to be executed, and the execution priority of the second update operation subtask is determined according to the generation time of the second update operation subtask. For example, if the generation time of the remaining task to be executed is earlier than the generation time of the second update subtask, the first execution priority can be determined as the execution priority of the remaining task to be executed, and the second execution priority can be determined as the execution priority of the second update operation subtask, that is, the execution priority of the remaining task to be executed is higher than the execution priority of the second update operation subtask, and the remaining task to be executed is executed first, and then the second update operation subtask is executed. If the generation time of the remaining task to be executed is later than the generation time of the second update subtask, the second execution priority can be determined as the execution priority of the remaining task to be executed, and the first execution priority can be determined as the execution priority of the second update operation subtask, that is, the execution priority of the remaining task to be executed is lower than the execution priority of the second update operation subtask, and the second update operation subtask is executed first, and then the remaining task to be executed. By generating the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask according to their corresponding generation times, the execution delay of the tasks can be reduced. The remaining tasks to be executed and the second update operation subtask can be executed asynchronously according to the execution priority, avoiding the execution of too many tasks at a time, which may cause a jamming problem in the target data table.
[0073] It is understandable that the first execution priority here is higher than the second execution priority. The first task type is an interactive task type not associated with the non-visual area. The interactive task type refers to a task type related to user interaction. For example, the remaining task to be executed of the interactive task type is to adjust the color of the data record in the visual area to red. The second task type is a non-interactive task type that is not associated with the non-visual area and is associated with the visual area. The third task type is a non-interactive task type that is not associated with either the visual area or the non-visual area. The non-interactive task type refers to a task type that is not related to user interaction, such as data reporting, data storage, etc.
[0074] It is understandable that if the task type of the remaining tasks to be executed is a task type associated with the non-visible area, then the remaining tasks to be executed are merged with the second update operation subtask to obtain a merged task to be executed, and the data content in the non-visible area is updated according to the merged task to be executed, including: if the task type of the remaining tasks to be executed is the fourth task type, that is, the remaining tasks to be executed are only associated with the non-visible area, then the remaining tasks to be executed are merged with the second update operation subtask to obtain a first merged task to be executed, and the data content in the non-visible area is updated according to the first merged task to be executed. For example, the remaining task to be executed is to cancel the adjustment of the column width of the third column in the non-visible area, and the second update operation subtask is to adjust the column width of the third column in the non-visible area. The first merged task to be executed obtained by merging the remaining tasks to be executed and the second update operation subtask is used to indicate the cancellation of the adjustment of the column width of the third column in the non-visible area, that is, there is no need to adjust the column width of the third column in the non-visible area. Alternatively, the remaining task to be executed is to expand the column width of the third column in the non-visible area by 3 cm, and the second update operation subtask is to reduce the column width of the third column in the non-visible area by 2 cm. The first merged task to be executed obtained by merging the remaining task to be executed and the second update operation subtask is used to indicate that the column width of the third column in the non-visible area will be expanded by 1 cm, thereby reducing the number of updates to the data content in the non-visible area and reducing the consumption of computing resources of the computer device.
[0075] Furthermore, if the task type of the remaining task to be executed is the fifth task type, that is, the remaining task to be executed is associated with both the visible area and the non-visible area, then the remaining task to be executed is split to obtain a first remaining subtask to be executed associated with the visible area, and a second remaining subtask to be executed associated with the non-visible area. The first remaining subtask to be executed is used to indicate that the data content in the visible area is updated, and the second remaining subtask to be executed is used to indicate that the data content in the non-visible area is updated. Therefore, the computer device can give priority to executing the first remaining subtask to be executed. If the first remaining subtask to be executed is completed, the second remaining subtask to be executed is merged with the second update operation subtask to obtain a second merged task to be executed, and the data content in the non-visible area is updated according to the second merged task to be executed. By giving priority to executing tasks associated with the visible area, it is beneficial to quickly present the updated data content in the visible area to the user, thereby improving the user experience.
[0076] It can be understood that the fourth task type is a task type associated with the non-visible area and not associated with the visible area; the fifth task type is a task type associated with both the visible area and the non-visible area.
[0077] In the present application, when an update operation task associated with both the visible area and the non-visible area of the target data table is obtained, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. In other words, independent update operation subtasks are maintained for the visible area and the non-visible area. In the process of updating the visible area or the non-visible area, it is not necessary to scan the entire amount of data content in the data table to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the consumption of computing resources during the data table update process and improving the efficiency of the data table update. Further, the data content in the visible area is synchronously updated according to the first update operation subtask, and the data content in the non-visible area is asynchronously updated according to the second update operation subtask. Here, synchronous update refers to immediately updating the data content in the visible area according to the first update operation subtask, and asynchronous update refers to the first task processing state when the data content in the visible area of the terminal has completed the update, and the second update operation subtask updates the data content in the non-visible area, that is, asynchronous update is a non-immediate update method. In other words, by synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated during a single update process can be reduced, which can reduce the probability of data table jams and improve the update smoothness and efficiency of the data table.
[0078] Further, see Figure 6 , is a flow chart of a data table processing method provided in an embodiment of the present application. Figure 6 As shown, this method can be Figure 1 The terminal can also be executed by Figure 1 It can also be executed by the server in Figure 1 The terminal and server in the embodiment are executed together. In this application, the devices used to execute the method can be collectively referred to as computer devices. The data table processing method may include the following steps S201 to S207:
[0079] S201: Obtain an update operation task on a target data table.
[0080] S202. If the update operation task is associated with both the visible area and the non-visible area of the target data table, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area.
[0081] S203: Update the data content in the visible area according to the first update operation subtask.
[0082] S204: If the data content in the visible area has been updated and a touch operation on the target data table is received, the visible area and the non-visible area of the target data table are adjusted according to the touch operation.
[0083] S205: Acquire a first task processing state of the terminal when the data content in the visible area has been updated.
[0084] S206: If there is unupdated data content in the adjusted visible area, update the unupdated data content in the adjusted visible area according to the second update operation subtask.
[0085] It is understandable that the implementation method for updating the unupdated data content in the adjusted visible area according to the second update operation subtask in this application can refer to the implementation method for updating the data content in the visible area according to the first update operation subtask. For example, the computer device can obtain the increasing direction of the row identifiers of the unupdated data content in the adjusted visible area, and update the unupdated data content in the adjusted visible area according to the second update operation subtask in accordance with the increasing direction of the row identifiers of the unupdated data content in the adjusted visible area.
[0086] S207: If the data content in the adjusted visible area has been updated, update the unupdated data content in the adjusted non-visible area according to the second update operation subtask and the first task processing status.
[0087] It is understandable that the implementation method of updating the data content that has not been updated in the adjusted non-visible area according to the second update operation subtask and the first task processing status in the present application can refer to the implementation method of updating the data content in the non-visible area according to the second update operation subtask and the first task processing status. For example, if the first task processing status indicates that there are no unexecuted remaining tasks to be executed in the terminal, the computer device can update the data content that has not been updated in the adjusted non-visible area according to the second update operation subtask; if the first task processing status indicates that there are unexecuted remaining tasks to be executed in the terminal, the computer device can obtain the task type of the remaining tasks to be executed, execute the remaining tasks to be executed according to the task type of the remaining tasks to be executed, and update the data content that has not been updated in the adjusted non-visible area according to the second update operation subtask.
[0088] In steps S204 to S207, if the data content in the visible area has been updated and a touch operation is received for the target data table, such as a sliding operation on the target data table, the computer device can adjust the visible area and non-visible area of the target data table according to the touch operation, that is, part of the sub-area in the visible area of the target data table is adjusted to the non-visible area, and part of the non-visible sub-area in the non-visible area of the target data table is adjusted to the visible area; or, the visible area in the target data table is adjusted to the non-visible area, and part of the non-visible sub-area (or all the non-visible area) in the target data table is adjusted to the visible area. Further, the computer device can obtain the first task processing state of the terminal when the data content in the visible area has been updated. If there is data content that has not been updated in the adjusted visible area, the data content in the adjusted visible area can be updated according to the second update operation subtask. If the data content in the adjusted visible area has been updated, the data content in the adjusted non-visible area that has not been updated is updated according to the second update operation subtask and the first task processing status.
[0089] For example, the target data table includes one hundred and twenty rows and three columns, the visible area includes the first to fiftieth rows of the target data table, and the non-visible area includes the fifty-first to one hundred and twentieth rows of the target data table. The first update operation subtask is used to instruct adjustment of the column width of the cells in the third column of each row from the first to the fiftieth rows, and the second update operation subtask is used to instruct adjustment of the column width of the cells in the third column of each row from the fifty-first to the 120th rows. Assume that after the data content in the visible area is updated according to the first update operation subtask, a sliding operation is received for the target data table. According to the sliding operation, the visible area and the non-visible area of the target data table are adjusted to obtain the adjusted visible area and the adjusted non-visible area. Assuming that the adjusted visible area includes the 20th to 70th rows of the target data table, and the non-visible area includes the 1st to 19th rows of the target data table, and the 71st to 120th rows of the target data table, then the column width of the cell corresponding to the third column of each row in the 51st to 70th rows in the adjusted visible area has not been adjusted. Therefore, the column width of the cell corresponding to the third column of each row in the 51st to 70th rows in the adjusted visible area can be adjusted according to the second update operation subtask. Similarly, the column width of the cell in the third column of each row in the 71st to 120th rows in the adjusted non-visible area has not been adjusted, and the computer device can adjust the column width of the cell in the third column of each row in the 71st to 120th rows in the adjusted non-visible area according to the first task processing status and the second update operation subtask.
[0090] It is understandable that if the data content in the visible area has been updated, the computer device can render the updated data content in the visible area, that is, render the updated data content in the visible area according to the row height, column width, color, font, wireframe, etc. of the row where the updated data content in the visible area is located, and display the rendered data content in the visible area in the terminal, which can reduce the waiting time for each user operation and avoid being blocked in subsequent operations and causing freezes. When it is detected that the updated data content in the non-visible area needs to be displayed, the computer device can render the updated data content in the non-visible area, reducing unnecessary rendering operations and saving computing resource consumption of the computer device.
[0091] It is understood that the number of data contents in the non-visible area is at least two, and the updating of the data contents in the non-visible area according to the second update operation subtask includes: the computer device can obtain an arrangement relationship between the data contents in the visible area and the data contents in the non-visible area, the arrangement relationship being used to indicate the size relationship between the arrangement identifier of the data contents in the visible area in the target direction and the arrangement identifier of the data contents in the non-visible area in the target direction, the target direction being the vertical direction of the target data table, and the arrangement identifier in the target direction being the row identifier. Further, the computer device can update the data contents in the non-visible area according to the second update operation subtask in sequence according to the arrangement relationship, starting a timer from the time when the data contents in the non-visible area are updated, and if the time obtained by the timer is greater than a time threshold, obtaining a second task processing state of the terminal when the time obtained by the timer is greater than the time threshold, the second task processing state being used to reflect whether there are any unexecuted tasks to be executed when the time obtained by the timer is greater than the time threshold. Further, based on the second task processing state and the second update operation subtask, the data contents in the non-visible area that have not been updated are updated.
[0092] For example, Figure 7As shown, the target data table includes 120 rows and three columns. The visible area includes rows 1 to 50 of the target data table, and the non-visible area includes rows 51 to 120 of the target data table. That is, the row identifiers of the data content in the visible area are 1 to 50, and the row identifiers of the content in the non-visible area are 51 to 120. The row identifiers of the data content in the visible area are all larger than the row identifiers of the data content in the non-visible area. Assume that the first update operation subtask is used to instruct the adjustment of the column width of the cells in the third column of each row from rows 1 to 50, and the second update operation subtask is used to instruct the adjustment of the column width of the cells in the third column of each row from rows 51 to 120, and the time threshold is 50ms. The computer device can first adjust the column width of the cells in the third column of each row from rows 1 to 50 in the target data table according to the first update operation subtask, and then add the second update operation subtask to the asynchronous task management storage area 70a, which is used to store and manage unexecuted tasks. Then, if the column width of the cells in the third column of each row from the first to the fiftieth row in the target data table has been adjusted, and the first task processing status indicates that the remaining tasks to be executed in the terminal have been executed, the computer device can read the second update operation subtask from the asynchronous task management storage area 70a, preferentially adjust the column width of the cells in the third column of the row with row identifier 51 according to the second update operation subtask, start the timer to start timing, and then adjust the column width of the cells in the third column of the row with row identifier 52, and so on. Assuming that the column width of the cells in the third column of the row with row identifier 70 in the non-visible area has been adjusted, and the time obtained by the timer is greater than 50ms, the computer device can then obtain the second task processing status of the terminal when the time obtained by the timer is greater than 50ms. The computer device can reset the timer, that is, set the timer to an initial value, such as 00:00:00, and generate a third update operation subtask based on the second update operation subtask, and the third update operation subtask is used to indicate the adjustment of the column width of the cells in the third column of each row from the 71st row to the 120th row in the non-visible area. If the second task processing status indicates that there are remaining tasks to be executed in the terminal that have not been executed, and the execution priority of the remaining tasks to be executed is higher than that of the second update operation subtask, the third update operation subtask can be stored in the asynchronous task management storage area 70a. Wait until the remaining tasks to be executed have been executed, read the third update operation subtask from the asynchronous task management area 70a, and according to the third update operation subtask, adjust the column width of the cells in the third column of the row with row identifier 71, start the timer to restart the timing, and then adjust the column width of the cells in the third column of the row with row identifier 72, and so on.Assume that the width of the cell in the third column of the row with row ID 90 in the non-visible area has been adjusted, and the time measured by the timer is greater than 50ms. At this time, the computer device can obtain the third task processing state of the terminal when the time measured is greater than 50ms. The above steps are repeated until the data content in the non-visible area is completely updated.
[0093] It is understandable that if Figure 8 As shown, the asynchronous task management storage area 70a manages unexecuted tasks through the following four steps: 1. Obtain pending tasks for the uncalculated area. If the uncalculated area is a non-visible area in the target data table, and the pending task is the second update operation subtask, add the second update operation subtask to the asynchronous task management storage area 70a. 2. When the pending tasks in the asynchronous task management storage area 70a meet the execution conditions, such as when all remaining pending tasks in the terminal have been executed, the computer device can execute the pending tasks and recheck every 50ms whether the pending tasks in the asynchronous task management storage area 70a meet the execution conditions. If the execution conditions are met, the pending tasks in the asynchronous task management storage area 70a continue to be executed; if the execution conditions are not met, the computer device waits for the next execution opportunity. 3. When all pending tasks in the asynchronous task management storage area 70a are executed, task management for the asynchronous task management storage area 70a is terminated. 4. When a new pending task is generated, task management for the asynchronous task management storage area 70a is resumed, and steps 1-3 above are repeated.
[0094] It is understandable that the second task processing state here is used to reflect whether there are any remaining tasks to be executed that have not been executed when the time obtained by the terminal is greater than the time threshold. If there are no remaining tasks to be executed that have not been executed when the time obtained by the terminal is greater than the time threshold, the computer device can immediately adjust the column width of the cells located in the third column of each row from the seventy-first row to the one hundred and twenty rows in the non-visible area according to the third update operation subtask. If there are any remaining tasks to be executed that have not been executed when the time obtained by the terminal is greater than the time threshold, the computer device can obtain the task type of the remaining tasks to be executed, execute the remaining tasks according to the task type of the remaining tasks to be executed, and adjust the column width of the cells located in the third column of each row from the seventy-first row to the one hundred and twenty rows in the non-visible area according to the third update operation subtask.
[0095] It is understood that the time threshold is determined based on the task processing performance of the terminal. For example, if the terminal has good task processing performance, a first duration may be determined as the time threshold. If the terminal has poor task processing performance, a second duration may be determined as the time threshold, with the first duration being greater than the second duration. Of course, the time threshold may also be set by the user of the terminal. The task processing performance of the terminal may be determined based on one or more of the terminal's task processing accuracy, processing efficiency, and the like.
[0096] It is understandable that the computer device can update the data content in the non-visible area in any of the following three ways:
[0097] Method 1: If the arrangement relationship indicates that the first arrangement identifier is smaller than the second arrangement identifier, indicating that the visible area is arranged before the non-visible area, the computer device can determine the increasing direction of the second arrangement identifier corresponding to the data content in the non-visible area, and update the data content in the non-visible area in accordance with the second update operation subtask in sequence according to the increasing direction of the second arrangement identifier. By updating the data content in the non-visible area in sequence according to the increasing direction of the second arrangement identifier, it is beneficial for the user to quickly present the updated data content in the non-visible area to the user when performing a downward sliding operation on the target data table. The downward sliding operation here refers to sliding the data content in the target data table in accordance with the increasing direction of the row identifier of the target data table.
[0098] It can be understood that the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction of the target data table. The target direction can refer to the vertical direction, and the arrangement identifier in the target direction refers to the row identifier.
[0099] For example, the target data table includes one hundred and twenty rows and three columns. The visible area includes the first to the fiftieth rows of the target data table, and the non-visible area includes the fifty-first to the one hundred and twentieth rows of the target data table. That is, the row identifiers of the data content in the visible area are 1 to 50, and the row identifiers of the content in the non-visible area are 51 to 120, respectively. The row identifiers of the data content in the visible area are all larger than the row identifiers of the data content in the non-visible area. Assuming that the second update operation subtask is used to instruct to adjust the column width of the cells in the third column of each row from the fifty-first to the one hundred and twentieth rows, the computer device can give priority to adjusting the column width of the cells in the third column of the row with row identifier 51, and then adjust the column width of the cells in the third column of the row with row identifier 52, and so on, until the column width of the cells in the third column of each row in the non-visible area is adjusted.
[0100] Method 2: If the arrangement relationship indicates that the first arrangement identifier is greater than the second arrangement identifier, then determine the decreasing direction of the second arrangement identifier corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction of the target data table; according to the decreasing direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask. By updating the data content in the non-visible area in sequence according to the decreasing direction of the second arrangement identifier, it is beneficial for the user to quickly present the updated data content in the non-visible area to the user when performing an upward sliding operation on the target data table. The upward sliding operation here refers to sliding the data content in the target data table in the decreasing direction of the row identifier of the target data table.
[0101] For example, the target data table includes one hundred and twenty rows and three columns. The visible area includes the seventieth to the one hundred and twentieth rows of the target data table, and the non-visible area includes the first to the sixty-ninth rows of the target data table. That is, the row identifiers of the data content in the visible area are 70 to 120, and the row identifiers of the content in the non-visible area are 1 to 69. The row identifiers of the data content in the visible area are all smaller than the row identifiers of the data content in the non-visible area. Assuming that the second update operation subtask is used to instruct to adjust the column width of the cells in the third column of each row from the first row to the sixty-ninth row, the computer device can give priority to adjusting the column width of the cells in the third column of the row with row identifier 69, and then adjust the column width of the cells in the third column of the row with row identifier 68, and so on, until the column width of the cells in the third column of each row in the non-visible area is adjusted.
[0102] Method three, as shown in 9, the number of the non-visible areas is two, and the two non-visible areas include a first non-visible area and a second non-visible area; if the arrangement relationship indicates that the third arrangement identifier is smaller than the first arrangement identifier, and the fourth arrangement identifier is larger than the first arrangement identifier, indicating that the visible area is arranged between the first non-visible area and the second non-visible area, then the decreasing direction of the third arrangement identifier corresponding to the data content in the first non-visible area and the increasing direction of the fourth arrangement identifier corresponding to the data content in the second non-visible area are determined. The first arrangement identifier, the third arrangement identifier, and the fourth arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area, the data content in the first non-visible area, and the data content in the second non-visible area in the target direction in the target data table. Furthermore, according to the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, the data content in the first non-visible area and the data content in the second non-visible area are alternately updated according to the second update operation subtask; by alternately updating the data content in the first non-visible area and the second non-visible area, it is beneficial to quickly present the updated data content in the first non-visible area and the second non-visible area to the user when the user performs a touch operation on the target data table.
[0103] It is understood that the alternating update herein can include the following four meanings: 1. First, according to the decreasing direction of the third arrangement identifier, the data content of the first non-visible area is updated sequentially according to the second update operation subtask; when the data content of the first non-visible area has been updated, according to the increasing direction of the fourth arrangement identifier, the data content of the second non-visible area is updated sequentially according to the second update operation subtask. 2. First, according to the increasing direction of the fourth arrangement identifier, the data content of the second non-visible area is updated sequentially according to the second update operation subtask; when the data content of the second non-visible area has been updated, according to the decreasing direction of the third arrangement identifier, the data content of the first non-visible area is updated sequentially according to the second update operation subtask. 3. First, according to the decreasing direction of the third arrangement identifier, the G data contents of the first non-visible area are updated sequentially according to the second update operation subtask; then, according to the increasing direction of the fourth arrangement identifier, the F data contents of the second non-visible area are updated sequentially according to the second update operation subtask, and so on, until the data contents of both the visible and non-visible areas are updated. G and F are both positive integers greater than or equal to 1, G is less than the number of data items in the first non-visible area, and F is less than the number of data items in the second non-visible area. G and F may or may not be the same. 4. First, in the ascending direction of the fourth arrangement identifier, sequentially update the F data items in the second non-visible area according to the second update operation subtask; then, in the descending direction of the third arrangement identifier, sequentially update the G data items in the first non-visible area according to the second update operation subtask, and so on, until the data content in both the visible and non-visible areas is updated.
[0104] For example, the first non-visible area includes M pieces of data content, and the second non-visible area includes N pieces of data content, where N and M are both positive integers, and G=F=1; the data content in the first non-visible area and the data content in the second non-visible area are alternately updated according to the second update operation subtask in accordance with the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, including: updating the data content M according to the second update operation subtask. i Update, if the data content M i After the update is completed, the data content N is updated according to the second update operation subtask. j Update; if the data content N j After the update is completed, the data content M is updated according to the second update operation subtask. i-1 Update, if the data content M i-1 After the update is completed, the data content N is updated according to the second update operation subtask. j+1 Update; the data content Mi Belong to the M data content, the data content M i-1 The third arrangement identifier of the M data content is smaller than the data content M i The third array identifies the data content, the data content N j Belongs to the N data contents, the data content N j+1 The fourth permutation identifier of the N data contents is greater than the N data contents. j By alternately updating the data content in the first non-visible area and the second non-visible area, when the user performs a touch operation on the target data table, the updated data content in the first non-visible area and the second non-visible area can be quickly presented to the user.
[0105] For example, the target data table includes 120 rows and 3 columns, the visible area includes rows 20 to 70 of the target data table, the first non-visible area includes rows 1 to 19 of the target data table, and the second visible area includes rows 71 to 120 of the target data table. The row identifiers of the data content in the first non-visible area are 1 to 19, respectively, and the row identifiers of the data content in the second non-visible area are 71 to 120, respectively. Assume that the second update operation subtask is used to instruct adjustment of the column width of the cells in the third column of each of the rows 1 to 19 and rows 71 to 120; the computer device may first adjust the column width of the cells in the third column of the row with row identifier 19 according to the second update operation subtask, and then adjust the column width of the cells in the third column of the row with row identifier 71 according to the second update operation subtask. Further, according to the second update operation subtask, adjust the column width of the cell in the third column in the row with row identifier 18, and then adjust the column width of the cell in the third column in the row with row identifier 72 according to the second update operation subtask, and so on, until the data content in the first non-visible area and the second non-visible area has been updated.
[0106] For example, assuming that the target data table is a data table with 1 million cells, after testing, the time required for updating the target data table using the update scheme of the present application and the time required for updating the target data table using the existing update scheme are shown in Table 3. The existing update scheme refers to a scheme for updating all data contents in the target data table at one time. As can be seen from Table 3, the time taken to set the border line operation on the target data table using the update scheme of the present application is 26s, and the time taken by the existing update scheme is 29s. It can be seen that the update scheme of the present application reduces the time taken by 3s, and the time optimization of the update scheme of the present application accounts for 10%. Similarly, the time taken to set the automatic line break operation on the target data table using the update scheme of the present application is 16s, and the time taken by the existing update scheme is 10s. It can be seen that the update scheme of the present application reduces the time taken by 6s, and the time optimization of the update scheme of the present application accounts for 38%. Similarly, the update scheme of the present application takes less time to perform full-table filtering operations, set border lines (whole-column operations), and set automatic line breaks on the target data table than the corresponding update operations performed on the target data table based on the existing update scheme, thereby reducing the probability of lag in the target data table.
[0107] Table 3
[0108]
[0109]
[0110] In the present application, when an update operation task associated with both the visible area and the non-visible area of the target data table is obtained, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. In other words, independent update operation subtasks are maintained for the visible area and the non-visible area. In the process of updating the visible area or the non-visible area, it is not necessary to scan the entire data content in the data table to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the consumption of computing resources during the data table update process and improving the efficiency of the data table update. Furthermore, the data content in the visible area is updated according to the first update operation subtask. If the data content in the visible area has been updated and a touch operation on the target data table is received, the visible area and non-visible area of the target data table are adjusted according to the touch operation, the first task processing state of the terminal when the data content in the visible area has been updated is obtained, the data content that has not been updated in the adjusted visible area is updated according to the second update operation subtask, and the data content that has not been updated in the non-visible area is updated according to the second update operation subtask and the first task processing state. In other words, when the visible area and the non-visible area are adjusted before the data content in the non-visible area is updated, the data content that has not been updated in the adjusted visible area is still updated first, and then the data content that has not been updated in the adjusted non-visible area is asynchronously updated, reducing the amount of data updated in a single update process, reducing the probability of data table jamming, and improving the update smoothness and update efficiency of the data table; at the same time, it is beneficial to quickly present the updated data content in the adjusted visible area to the user, reducing the waiting time for user operations.
[0111] See Figure 10 , is a structural diagram of a data table processing device provided in an embodiment of the present application. The above-mentioned data table processing device can be a computer program (including program code) running in a network device, for example, the data table processing device is an application software; the device can be used to execute the corresponding steps of the method provided in an embodiment of the present application. Figure 10 As shown, the data table processing device may include: an acquisition module 111 , a splitting module 112 , a first updating module 113 , a second updating module 114 and a rendering module 115 .
[0112] An acquisition module 111 is used to acquire an update operation task on a target data table;
[0113] A splitting module 112 is configured to split the update operation task, if the update operation task is associated with both a visible area and a non-visible area of the target data table, into a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the visible area is the area in the target data table where the data content in a visible state is located, and the non-visible area is the area in the target data table where the data content in an invisible state is located;
[0114] A first updating module 113, configured to update the data content in the visible area according to the first updating operation subtask;
[0115] The second update module 114 is used to obtain the first task processing status of the terminal when the data content in the visible area has been updated, and update the data content in the non-visible area according to the second update operation subtask and the first task processing status if the data content in the visible area has been updated; the terminal is a terminal used to update the target data table.
[0116] It is understandable that the second updating module 114 includes a first updating unit 41a and a second updating unit 42a:
[0117] A first updating unit 41a is configured to update the data content in the non-visible area according to the second update sub-operation if the first task processing status indicates that all remaining tasks to be executed in the terminal have been completed; the remaining tasks to be executed are tasks to be executed in the terminal other than the second update sub-operation task;
[0118] The second update unit 42a is used to obtain the task type of the remaining tasks to be executed if the first task processing status indicates that there are remaining tasks to be executed in the terminal that have not been completed, execute the remaining tasks according to the task type of the remaining tasks to be executed, and update the data content in the non-visible area according to the second update operation subtask.
[0119] It is understandable that the second updating unit 42a executes the remaining tasks according to the task type of the remaining tasks, and updates the data content in the non-visible area according to the second updating operation subtask, including:
[0120] If the task type of the remaining tasks to be executed is a task type not associated with the non-visible area, determining the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, executing the remaining tasks to be executed in sequence according to the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, and updating the data content in the non-visible area according to the second update operation subtask;
[0121] If the task type of the remaining tasks to be executed is the task type associated with the non-visible area, the remaining tasks to be executed are merged with the second update operation subtask to obtain a merged task to be executed, and the data content in the non-visible area is updated according to the merged task to be executed.
[0122] It is understandable that the second updating unit 42a determines the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask, including:
[0123] If the task type of the remaining tasks to be executed is the first task type or the second task type, the first execution priority is determined as the execution priority of the remaining tasks to be executed, and the second execution priority is determined as the execution priority of the second update operation subtask; the first execution priority is higher than the second execution priority, the first task type is an interactive task type not associated with the non-visible area, and the second task type is a non-interactive task type not associated with the non-visible area but associated with the visible area;
[0124] If the task type of the remaining tasks to be executed is the third task type, then obtain the corresponding generation time of the remaining tasks to be executed and the second update operation subtask, determine the execution priority of the remaining tasks to be executed according to the generation time of the remaining tasks to be executed, and determine the execution priority of the second update operation subtask according to the generation time of the second update operation subtask; the third task type is a non-interactive task type that is not associated with the visible area and the non-visible area.
[0125] It is understandable that if the task type of the remaining tasks to be executed is the task type associated with the non-visible area, the second updating unit 42a merges the remaining tasks to be executed with the second update operation subtask to obtain a merged task to be executed, and updates the data content in the non-visible area according to the merged task to be executed, including:
[0126] If the task type of the remaining tasks to be executed is the fourth task type, the remaining tasks to be executed are merged with the second update operation subtask to obtain a first merged task to be executed, and the data content in the non-visible area is updated according to the first merged task to be executed; the fourth task type is a task type associated with the non-visible area and not associated with the visible area, and the first merged task to be executed belongs to the merged task to be executed;
[0127] If the task type of the remaining tasks to be executed is the fifth task type, the remaining tasks to be executed are split to obtain a first remaining sub-task to be executed associated with the visible area, and a second remaining sub-task to be executed associated with the non-visible area. The first remaining sub-task to be executed is executed. If the first remaining sub-task to be executed is completed, the second remaining sub-task to be executed is merged with the second update operation sub-task to obtain a second merged task to be executed. The data content in the non-visible area is updated according to the second merged task to be executed. The second merged task to be executed belongs to the merged task to be executed, and the fifth task type is a task type associated with both the visible area and the non-visible area.
[0128] It is understandable that the number of data contents in the non-visible area is at least two, and the first updating unit 41a updates the data contents in the non-visible area according to the second updating operation subtask, including:
[0129] Acquire an arrangement relationship between the data content in the visible area and the data content in the non-visible area;
[0130] According to the arrangement relationship, the data content in the non-visible area is updated in sequence according to the second update operation subtask;
[0131] Starting timing when the data content in the non-visible area is updated, and if the time obtained by timing is greater than a time threshold, obtaining a second task processing state of the terminal when the time obtained by timing is greater than the time threshold; the time threshold is determined based on the task processing performance of the terminal;
[0132] The data content in the non-visible area that has not been updated is updated according to the second task processing state and the second update operation subtask.
[0133] It is understandable that the first updating unit 41a updates the data content in the non-visible area according to the arrangement relationship and the second updating operation subtasks in sequence, including:
[0134] If the arrangement relationship indicates that the first arrangement identifiers are all smaller than the second arrangement identifiers, then determining the increasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table;
[0135] According to the increasing direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
[0136] It is understandable that the first updating unit 41a updates the data content in the non-visible area according to the arrangement relationship and the second updating operation subtasks in sequence, including:
[0137] If the arrangement relationship indicates that the first arrangement identifiers are all greater than the second arrangement identifiers, then determining the decreasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table;
[0138] According to the descending direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
[0139] It is understandable that the number of the non-visible areas is two, and the two non-visible areas include a first non-visible area and a second non-visible area; the first updating unit 41a updates the data content in the non-visible areas according to the arrangement relationship and the second update operation subtask in sequence, including:
[0140] If the arrangement relationship indicates that the third arrangement identifiers are all smaller than the first arrangement identifier, and the fourth arrangement identifier is larger than the first arrangement identifier, then determining a decreasing direction of the third arrangement identifier corresponding to the data content in the first non-visible area, and an increasing direction of the fourth arrangement identifier corresponding to the data content in the second non-visible area; the first arrangement identifier, the third arrangement identifier, and the fourth arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area, the data content in the first non-visible area, and the data content in the second non-visible area in the target direction in the target data table;
[0141] According to the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, the data content in the first non-visible area and the data content in the second non-visible area are updated alternately according to the second update operation subtask.
[0142] It is understandable that the first non-visible area includes M pieces of data content, and the second non-visible area includes N pieces of data content, where N and M are both positive integers; the first updating unit 41a alternately updates the data content in the first non-visible area and the data content in the second non-visible area according to the second update operation subtask in the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, including:
[0143] According to the second update operation subtask, the data content M i Update, if the data content M i After the update is completed, the data content N is updated according to the second update operation subtask. j Make updates;
[0144] If the data content N j After the update is completed, the data content M is updated according to the second update operation subtask. i-1 Update, if the data content M i-1 After the update is completed, the data content N is updated according to the second update operation subtask. j+1 Update; the data content M i Belong to the M pieces of data content, the data content M i-1 The third arrangement identifier of the M data contents is smaller than the data content M i The third permutation identifies adjacent data content, the data content N j Belong to the N data contents, the data contents N j+1 The fourth arrangement identifier of the N data contents is greater than the data content N j The fourth arrangement identifies the adjacent data content.
[0145] It is understandable that if the data content in the visible area has been updated, the second updating module 114 obtains the first task processing status of the terminal when the data content in the visible area has been updated, and updates the data content in the non-visible area according to the second update operation subtask and the first task processing status, including:
[0146] If the data content in the visible area has been updated and a touch operation on the target data table is received, adjusting the visible area and non-visible area of the target data table according to the touch operation;
[0147] Acquire a first task processing state when the data content of the terminal in the visible area has been updated;
[0148] If there is unupdated data content in the adjusted visible area, then updating the unupdated data content in the adjusted visible area according to the second update operation subtask;
[0149] If the data content in the adjusted visible area has been updated, the data content in the adjusted non-visible area that has not been updated is updated according to the second update operation subtask and the first task processing status.
[0150] It is understandable that the rendering module 115 is used to render the updated data content in the visible area if the data content in the visible area has been updated;
[0151] The rendered data content in the visible area is displayed in the terminal.
[0152] It can be understood that the first update module 113 is used to obtain the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table; according to the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table, the data content in the visible area is updated in sequence according to the first update operation subtask.
[0153] According to one embodiment of the present application, Figure 4 The steps involved in the data table processing method shown can be represented by Figure 10 The data table processing device shown in FIG. Figure 4 The step S101 shown in FIG. Figure 10 The acquisition module 111 in is executed, Figure 4 The step S102 shown in FIG. Figure 10 The split module 112 is executed; Figure 4 The step S103 shown in FIG. Figure 10 The first update module 113 is executed; Figure 4 The step S104 shown in FIG. Figure 10 The second update module 114 in is executed.
[0154] According to one embodiment of the present application, Figure 10The various modules in the data table processing device shown can be individually or all combined into one or several units to constitute, or one (some) of the units can be further split into at least two functionally smaller sub-units, which can achieve the same operation without affecting the realization of the technical effects of the embodiments of the present application. The above modules are divided based on logical functions. In actual applications, the functions of one module can also be implemented by at least two units, or the functions of at least two modules can be implemented by one unit. In other embodiments of the present application, the data table processing device can also include other units. In actual applications, these functions can also be implemented with the assistance of other units, and can be implemented by the collaboration of at least two units.
[0155] According to one embodiment of the present application, the program can be executed by running on a general computer device such as a computer including a central processing unit (CPU), a random access memory (RAM), a read-only memory (ROM) and other processing components and storage components. Figure 4 and Figure 5 A computer program (including program code) for each step involved in the corresponding method shown in Figure 10 The data table processing device shown in and the data table processing method of the embodiment of the present application are implemented. The above computer program can be recorded on, for example, a computer readable recording medium, and loaded into the above computing device through the computer readable recording medium and run therein.
[0156] In the present application, when an update operation task associated with both the visible area and the non-visible area of the target data table is obtained, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. In other words, independent update operation subtasks are maintained for the visible area and the non-visible area. In the process of updating the visible area or the non-visible area, it is not necessary to scan the entire amount of data content in the data table to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the consumption of computing resources during the data table update process and improving the efficiency of the data table update. Further, the data content in the visible area is synchronously updated according to the first update operation subtask, and the data content in the non-visible area is asynchronously updated according to the second update operation subtask. Here, synchronous update refers to immediately updating the data content in the visible area according to the first update operation subtask, and asynchronous update refers to the first task processing state when the data content in the visible area of the terminal has completed the update, and the second update operation subtask updates the data content in the non-visible area, that is, asynchronous update is a non-immediate update method. In other words, by synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated during a single update process can be reduced, which can reduce the probability of data table jams and improve the update smoothness and efficiency of the data table.
[0157] See Figure 11 , is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. Figure 11 As shown, the above-mentioned computer device 1000 may include: a processor 1001, a network interface 1004 and a memory 1005. In addition, the above-mentioned computer device 1000 may also include: a user interface 1003, and at least one communication bus 1002. The communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display), a keyboard (Keyboard), and the user interface 1003 may optionally include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or a non-volatile memory (non-volatile memory), such as at least one disk memory. The memory 1005 may optionally also be at least one storage device away from the aforementioned processor 1001. As Figure 11 As shown, the memory 1005 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application.
[0158] exist Figure 11 In the computer device 1000 shown, the network interface 1004 can provide network communication functions; the user interface 1003 is mainly used to provide an input interface; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0159] Get the update operation task about the target data table;
[0160] If the update operation task is associated with both the visible area and the non-visible area of the target data table, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; the visible area is the area where the data content in the target data table is in a visible state, and the non-visible area is the area where the data content in the target data table is in an invisible state;
[0161] updating the data content in the visible area according to the first update operation subtask;
[0162] If the data content in the visible area has been updated, the first task processing status of the terminal when the data content in the visible area has been updated is obtained, and the data content in the non-visible area is updated according to the second update operation subtask and the first task processing status; the terminal is a terminal used to update the target data table.
[0163] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to update the data content in the non-visible area according to the second update operation subtask and the first task processing status, including:
[0164] If the first task processing status indicates that all remaining tasks to be executed in the terminal have been completed, then updating the data content in the non-visible area according to the second update operation subtask; the remaining tasks to be executed are the tasks to be executed in the terminal other than the second update operation subtask;
[0165] If the first task processing status indicates that there are remaining tasks to be executed in the terminal that have not been completed, the task type of the remaining tasks to be executed is obtained, the remaining tasks to be executed are executed according to the task type of the remaining tasks to be executed, and the data content in the non-visible area is updated according to the second update operation subtask.
[0166] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to execute the remaining tasks according to the task type of the remaining tasks to be executed, and update the data content in the non-visible area according to the second update operation subtask, including:
[0167] If the task type of the remaining tasks to be executed is a task type not associated with the non-visible area, determining the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, executing the remaining tasks to be executed in sequence according to the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, and updating the data content in the non-visible area according to the second update operation subtask;
[0168] If the task type of the remaining tasks to be executed is the task type associated with the non-visible area, the remaining tasks to be executed are merged with the second update operation subtask to obtain a merged task to be executed, and the data content in the non-visible area is updated according to the merged task to be executed.
[0169] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to determine the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask, including:
[0170] If the task type of the remaining tasks to be executed is the first task type or the second task type, the first execution priority is determined as the execution priority of the remaining tasks to be executed, and the second execution priority is determined as the execution priority of the second update operation subtask; the first execution priority is higher than the second execution priority, the first task type is an interactive task type not associated with the non-visible area, and the second task type is a non-interactive task type not associated with the non-visible area but associated with the visible area;
[0171] If the task type of the remaining tasks to be executed is the third task type, then obtain the corresponding generation time of the remaining tasks to be executed and the second update operation subtask, determine the execution priority of the remaining tasks to be executed according to the generation time of the remaining tasks to be executed, and determine the execution priority of the second update operation subtask according to the generation time of the second update operation subtask; the third task type is a non-interactive task type that is not associated with the visible area and the non-visible area.
[0172] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to implement, if the task type of the remaining tasks to be executed is a task type associated with the non-visible area, merging the remaining tasks to be executed with the second update operation subtask to obtain a merged task to be executed, and updating the data content in the non-visible area according to the merged task to be executed, including:
[0173] If the task type of the remaining tasks to be executed is the fourth task type, the remaining tasks to be executed are merged with the second update operation subtask to obtain a first merged task to be executed, and the data content in the non-visible area is updated according to the first merged task to be executed; the fourth task type is a task type associated with the non-visible area and not associated with the visible area, and the first merged task to be executed belongs to the merged task to be executed;
[0174] If the task type of the remaining tasks to be executed is the fifth task type, the remaining tasks to be executed are split to obtain a first remaining sub-task to be executed associated with the visible area, and a second remaining sub-task to be executed associated with the non-visible area. The first remaining sub-task to be executed is executed. If the first remaining sub-task to be executed is completed, the second remaining sub-task to be executed is merged with the second update operation sub-task to obtain a second merged task to be executed. The data content in the non-visible area is updated according to the second merged task to be executed. The second merged task to be executed belongs to the merged task to be executed, and the fifth task type is a task type associated with both the visible area and the non-visible area.
[0175] It is understandable that the number of data contents in the non-visible area is at least two, and the processor 1001 can be used to call the device control application stored in the memory 1005 to update the data content in the non-visible area according to the second update operation subtask, including:
[0176] Acquire an arrangement relationship between the data content in the visible area and the data content in the non-visible area;
[0177] According to the arrangement relationship, the data content in the non-visible area is updated in sequence according to the second update operation subtask;
[0178] Starting timing when the data content in the non-visible area is updated, and if the time obtained by timing is greater than a time threshold, obtaining a second task processing state of the terminal when the time obtained by timing is greater than the time threshold; the time threshold is determined based on the task processing performance of the terminal;
[0179] The data content in the non-visible area that has not been updated is updated according to the second task processing state and the second update operation subtask.
[0180] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to update the data content in the non-visible area according to the arrangement relationship and in sequence according to the second update operation subtask, including:
[0181] If the arrangement relationship indicates that the first arrangement identifiers are all smaller than the second arrangement identifiers, then determining the increasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table;
[0182] According to the increasing direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
[0183] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to update the data content in the non-visible area according to the arrangement relationship and in sequence according to the second update operation subtask, including:
[0184] If the arrangement relationship indicates that the first arrangement identifiers are all greater than the second arrangement identifiers, then determining the decreasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table;
[0185] According to the descending direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
[0186] It is understandable that the number of the non-visible areas is two, and the two non-visible areas include a first non-visible area and a second non-visible area; the processor 1001 can be used to call the device control application stored in the memory 1005 to implement the update of the data content in the non-visible area according to the second update operation subtask in accordance with the arrangement relationship, including:
[0187] If the arrangement relationship indicates that the third arrangement identifiers are all smaller than the first arrangement identifier, and the fourth arrangement identifier is larger than the first arrangement identifier, then determining a decreasing direction of the third arrangement identifier corresponding to the data content in the first non-visible area, and an increasing direction of the fourth arrangement identifier corresponding to the data content in the second non-visible area; the first arrangement identifier, the third arrangement identifier, and the fourth arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area, the data content in the first non-visible area, and the data content in the second non-visible area in the target direction in the target data table;
[0188] According to the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, the data content in the first non-visible area and the data content in the second non-visible area are updated alternately according to the second update operation subtask.
[0189] It can be understood that the first non-visible area includes M pieces of data content, and the second non-visible area includes N pieces of data content, where N and M are both positive integers; the processor 1001 can be used to call the device control application stored in the memory 1005 to implement the alternating update of the data content in the first non-visible area and the data content in the second non-visible area according to the second update operation subtask in the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, including:
[0190] According to the second update operation subtask, the data content M i Update, if the data content M i After the update is completed, the data content N is updated according to the second update operation subtask. j Make updates;
[0191] If the data content N j After the update is completed, the data content M is updated according to the second update operation subtask. i-1 Update, if the data content M i-1 After the update is completed, the data content N is updated according to the second update operation subtask. j+1 Update; the data content M i Belong to the M pieces of data content, the data content M i-1The third arrangement identifier of the M data contents is smaller than the data content M i The third permutation identifies adjacent data content, the data content N j Belong to the N data contents, the data contents N j+1 The fourth arrangement identifier of the N data contents is greater than the data content N j The fourth arrangement identifies the adjacent data content.
[0192] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to implement, if the data content in the visible area has been updated, obtaining the first task processing status of the terminal when the data content in the visible area has been updated, and updating the data content in the non-visible area according to the second update operation subtask and the first task processing status, including:
[0193] If the data content in the visible area has been updated and a touch operation on the target data table is received, adjusting the visible area and non-visible area of the target data table according to the touch operation;
[0194] Acquire a first task processing state when the data content of the terminal in the visible area has been updated;
[0195] If there is unupdated data content in the adjusted visible area, then updating the unupdated data content in the adjusted visible area according to the second update operation subtask;
[0196] If the data content in the adjusted visible area has been updated, the data content in the adjusted non-visible area that has not been updated is updated according to the second update operation subtask and the first task processing status.
[0197] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve: obtaining the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table; according to the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table, updating the data content in the visible area in accordance with the first update operation subtask.
[0198] It is understandable that the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve: if the data content in the visible area has been updated, then render the updated data content in the visible area;
[0199] The rendered data content in the visible area is displayed in the terminal.
[0200] In the present application, when an update operation task associated with both the visible area and the non-visible area of the target data table is obtained, the update operation task is split to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area. In other words, independent update operation subtasks are maintained for the visible area and the non-visible area. In the process of updating the visible area or the non-visible area, it is not necessary to scan the entire amount of data content in the data table to determine whether the data content in the visible area and the non-visible area has been updated, thereby reducing the consumption of computing resources during the data table update process and improving the efficiency of the data table update. Further, the data content in the visible area is synchronously updated according to the first update operation subtask, and the data content in the non-visible area is asynchronously updated according to the second update operation subtask. Here, synchronous update refers to immediately updating the data content in the visible area according to the first update operation subtask, and asynchronous update refers to the first task processing state when the data content in the visible area of the terminal has completed the update, and the second update operation subtask updates the data content in the non-visible area, that is, asynchronous update is a non-immediate update method. In other words, by synchronously updating the data content in the visible area and asynchronously updating the data content in the non-visible area, the amount of data updated during a single update process can be reduced, which can reduce the probability of data table jams and improve the update smoothness and efficiency of the data table.
[0201] It should be understood that the computer device 1000 described in the embodiment of the present application can execute the above Figure 6 And the previous article Figure 4 The description of the data table processing method in the corresponding embodiment can also be performed as described above. Figure 10 The description of the data table processing device in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated here either.
[0202] In addition, it should be noted that: the embodiment of the present application further provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program executed by the aforementioned data table processing device, and the computer program includes program instructions. When the processor executes the program instructions, the aforementioned Figure 6 And the previous article Figure 4 The description of the data table processing method in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated here. For technical details not disclosed in the computer-readable storage medium embodiment involved in this application, please refer to the description of the method embodiment of this application.
[0203] As an example, the above program instructions may be deployed on a computer device for execution, or deployed on at least two computer devices at one location for execution, or executed on at least two computer devices distributed at at least two locations and interconnected via a communication network. The at least two computer devices distributed at at least two locations and interconnected via a communication network may constitute a blockchain network.
[0204] The computer-readable storage medium may be the data table processing device provided in any of the aforementioned embodiments or the central storage unit of the computer device, such as the hard disk or memory of the computer device. The computer-readable storage medium may also be an external storage device of the computer device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the computer device. Furthermore, the computer-readable storage medium may also include both the central storage unit of the computer device and an external storage device. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium may also be used to temporarily store data that has been output or is to be output.
[0205] The terms "first," "second," and the like in the description, claims, and drawings of the embodiments of the present application are used to distinguish between contents in different media, rather than to describe a specific order. In addition, the terms "including" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, apparatus, product, or device that includes a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules that are not listed, or may optionally include other steps and units inherent to these processes, methods, apparatuses, products, or devices.
[0206] The present application also provides a computer program product, including a computer program / instruction, which implements the above-mentioned Figure 4 and Figure 6 The description of the data table processing method in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated here. For technical details not disclosed in the embodiments of the computer program product involved in this application, please refer to the description of the method embodiment of this application.
[0207] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0208] The methods and related devices provided by the embodiments of the present application are described with reference to the method flow charts and / or structural diagrams provided by the embodiments of the present application. Specifically, each process and / or block in the method flow charts and / or structural diagrams, as well as the combination of processes and / or blocks in the flow charts and / or block diagrams, 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 network-connected device to generate a machine, so that the instructions executed by the processor of the computer or other programmable network-connected device generate instructions for implementing the process. Figure 1 Schematic diagram of one or more processes and / or structures Figure 1 These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable network-connected device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device, which implements the function specified in the process. Figure 1 Schematic diagram of one or more processes and / or structures Figure 1 These computer program instructions can also be loaded onto a computer or other programmable network connected device, so that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide the functions for implementing the process. Figure 1 The flow or flows and / or structures illustrate the steps of the functions specified in one block or multiple blocks.
[0209] The above disclosure is only a preferred embodiment of the present application, and certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.
Claims
1. A data table processing method, characterized in that: include: Get the update operation task about the target data table; If the update operation task is associated with both the visible area and the non-visible area of the target data table, split the update operation task to obtain a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; The visible area is the area where the data content in the target data table is visible, and the non-visible area is the area where the data content in the target data table is invisible; updating the data content in the visible area according to the first update operation subtask; If the data content in the visible area has been updated, obtaining a first task processing state of the terminal when the data content in the visible area has been updated; if the first task processing state indicates that all remaining tasks to be executed in the terminal have been completed, obtaining an arrangement relationship between the data content in the visible area and the data content in the non-visible area; updating the data content in the non-visible area in accordance with the second update operation subtask in sequence according to the arrangement relationship; starting timing from the time when the data content in the non-visible area is updated, and if the time obtained by timing is greater than a time threshold, obtaining a second task processing state of the terminal when the time obtained by timing is greater than the time threshold; The time threshold is determined based on the task processing performance of the terminal; based on the second task processing status and the second update operation subtask, the data content that has not been updated in the non-visible area is updated; the terminal is a terminal used to update the target data table; the remaining tasks to be executed are the tasks to be executed in the terminal other than the second update operation subtask.
2. The method according to claim 1, wherein The method further comprises: If the first task processing status indicates that there are remaining tasks to be executed in the terminal that have not been completed, the task type of the remaining tasks to be executed is obtained, the remaining tasks to be executed are executed according to the task type of the remaining tasks to be executed, and the data content in the non-visible area is updated according to the second update operation subtask.
3. The method according to claim 2, wherein The executing the remaining tasks to be executed according to the task types of the remaining tasks to be executed, and updating the data content in the non-visible area according to the second update operation subtask, includes: If the task type of the remaining tasks to be executed is a task type not associated with the non-visible area, determining the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, executing the remaining tasks to be executed in sequence according to the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively, and updating the data content in the non-visible area according to the second update operation subtask; If the task type of the remaining tasks to be executed is the task type associated with the non-visible area, the remaining tasks to be executed are merged with the second update operation subtask to obtain a merged task to be executed, and the data content in the non-visible area is updated according to the merged task to be executed.
4. The method according to claim 3, wherein Determining the execution priorities corresponding to the remaining tasks to be executed and the second update operation subtask respectively includes: If the task type of the remaining tasks to be executed is the first task type or the second task type, the first execution priority is determined as the execution priority of the remaining tasks to be executed, and the second execution priority is determined as the execution priority of the second update operation subtask; the first execution priority is higher than the second execution priority, the first task type is an interactive task type not associated with the non-visible area, and the second task type is a non-interactive task type not associated with the non-visible area but associated with the visible area; If the task type of the remaining tasks to be executed is the third task type, then obtain the corresponding generation time of the remaining tasks to be executed and the second update operation subtask, determine the execution priority of the remaining tasks to be executed according to the generation time of the remaining tasks to be executed, and determine the execution priority of the second update operation subtask according to the generation time of the second update operation subtask; the third task type is a non-interactive task type that is not associated with the visible area and the non-visible area.
5. The method according to claim 3, wherein If the task type of the remaining tasks to be executed is the task type associated with the non-visible area, merging the remaining tasks to be executed with the second update operation subtask to obtain a merged task to be executed, and updating the data content in the non-visible area according to the merged task to be executed, including: If the task type of the remaining tasks to be executed is the fourth task type, the remaining tasks to be executed are merged with the second update operation subtask to obtain a first merged task to be executed, and the data content in the non-visible area is updated according to the first merged task to be executed; the fourth task type is a task type associated with the non-visible area and not associated with the visible area, and the first merged task to be executed belongs to the merged task to be executed; If the task type of the remaining tasks to be executed is the fifth task type, the remaining tasks to be executed are split to obtain a first remaining sub-task to be executed associated with the visible area, and a second remaining sub-task to be executed associated with the non-visible area. The first remaining sub-task to be executed is executed. If the first remaining sub-task to be executed is completed, the second remaining sub-task to be executed is merged with the second update operation sub-task to obtain a second merged task to be executed. The data content in the non-visible area is updated according to the second merged task to be executed. The second merged task to be executed belongs to the merged task to be executed, and the fifth task type is a task type associated with both the visible area and the non-visible area.
6. The method according to claim 1, wherein The updating of the data content in the non-visible area according to the second update operation subtask in sequence according to the arrangement relationship includes: If the arrangement relationship indicates that the first arrangement identifiers are all smaller than the second arrangement identifiers, then determining the increasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table; According to the increasing direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
7. The method according to claim 1, wherein The updating of the data content in the non-visible area according to the second update operation subtask in sequence according to the arrangement relationship includes: If the arrangement relationship indicates that the first arrangement identifiers are all greater than the second arrangement identifiers, then determining the decreasing direction of the second arrangement identifiers corresponding to the data content in the non-visible area; the first arrangement identifier and the second arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area and the data content in the non-visible area in the target direction in the target data table; According to the descending direction of the second arrangement identifier, the data content in the non-visible area is updated in sequence according to the second update operation subtask.
8. The method according to claim 1, wherein The number of the non-visible areas is two, and the two non-visible areas include a first non-visible area and a second non-visible area; The updating of the data content in the non-visible area according to the second update operation subtask in sequence according to the arrangement relationship includes: If the arrangement relationship indicates that the third arrangement identifiers are all smaller than the first arrangement identifier, and the fourth arrangement identifier is larger than the first arrangement identifier, then determining a decreasing direction of the third arrangement identifier corresponding to the data content in the first non-visible area, and an increasing direction of the fourth arrangement identifier corresponding to the data content in the second non-visible area; the first arrangement identifier, the third arrangement identifier, and the fourth arrangement identifier respectively reflect the arrangement identifiers of the data content in the visible area, the data content in the first non-visible area, and the data content in the second non-visible area in the target direction in the target data table; According to the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier, the data content in the first non-visible area and the data content in the second non-visible area are updated alternately according to the second update operation subtask.
9. The method according to claim 8, wherein The first non-visible area includes M pieces of data content, and the second non-visible area includes N pieces of data content, where N and M are both positive integers; The step of alternately updating the data content in the first non-visible area and the data content in the second non-visible area according to the second update operation subtask in accordance with the decreasing direction of the third arrangement identifier and the increasing direction of the fourth arrangement identifier includes: According to the second update operation subtask, the data content M i Update, if the data content M i After the update is completed, the data content N is updated according to the second update operation subtask. j Make updates; If the data content N j After the update is completed, the data content M is updated according to the second update operation subtask. i-1 Update, if the data content M i-1 After the update is completed, the data content N is updated according to the second update operation subtask. j+1 Update; the data content M i Belong to the M pieces of data content, the data content M i-1 The third arrangement identifier of the M data contents is smaller than the data content M i The third permutation identifies adjacent data content, the data content N j Belong to the N data contents, the data contents N j+1 The fourth arrangement identifier of the N data contents is greater than the data content N j The fourth arrangement identifies the adjacent data content.
10. The method according to claim 1, wherein The method further comprises: If the data content in the visible area has been updated and a touch operation on the target data table is received, adjusting the visible area and non-visible area of the target data table according to the touch operation; Acquire a first task processing state when the data content of the terminal in the visible area has been updated; If there is unupdated data content in the adjusted visible area, then updating the unupdated data content in the adjusted visible area according to the second update operation subtask; If the data content in the adjusted visible area has been updated, the data content in the adjusted non-visible area that has not been updated is updated according to the second update operation subtask and the first task processing status.
11. The method according to claim 1, wherein Updating the data content in the visible area according to the first update operation subtask includes: Obtaining the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table; According to the increasing direction of the arrangement identifier of the data content in the visible area in the target direction of the target data table, the data content in the visible area is updated in sequence according to the first update operation subtask.
12. The method according to claim 1, wherein The method further comprises: If the data content in the visible area has been updated, rendering the updated data content in the visible area; The rendered data content in the visible area is displayed in the terminal.
13. A data table processing device, characterized in that: include: The acquisition module is used to obtain the update operation tasks on the target data table; a splitting module, configured to split the update operation task, if the update operation task is associated with both the visible area and the non-visible area of the target data table, into a first update operation subtask associated with the visible area and a second update operation subtask associated with the non-visible area; The visible area is the area where the data content in the target data table is visible, and the non-visible area is the area where the data content in the target data table is invisible; A first updating module, configured to update the data content in the visible area according to the first updating operation subtask; The second update module includes a first update unit, the first update unit being configured to, if the data content in the visible area has been updated, obtain a first task processing state of the terminal when the data content in the visible area has been updated; if the first task processing state indicates that all remaining tasks to be executed in the terminal have been completed, obtain an arrangement relationship between the data content in the visible area and the data content in the non-visible area; update the data content in the non-visible area in accordance with the second update operation subtask in sequence according to the arrangement relationship; start timing from the time when the data content in the non-visible area is updated, and if the time obtained by timing is greater than a time threshold, obtain a second task processing state of the terminal when the time obtained by timing is greater than the time threshold; The time threshold is determined based on the task processing performance of the terminal; based on the second task processing status and the second update operation subtask, the data content that has not been updated in the non-visible area is updated; the terminal is a terminal used to update the target data table; the remaining tasks to be executed are the tasks to be executed in the terminal other than the second update operation subtask.
14. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 12 are implemented.
15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.
16. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.
Citation Information
Patent Citations
Web page refreshment method and device
CN105701106A