Data processing method and device, storage medium, and electronic device

By separating and dynamic data copying of the server internal data, the problem of inefficient data conversion and modification in the prior art is solved, and efficient data processing in high concurrency environment is achieved.

CN112130811BActive Publication Date: 2025-04-15BEIJING JINGDONG SHANGKE INFORMATION TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201910548854.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-06-24
Publication Date
2025-04-15
Estimated Expiration
2039-06-24

AI Technical Summary

Technical Problem

The prior art has shortcomings in improving the efficiency of internal data conversion and shared data modification of servers, especially in high concurrency environments, the reflection mechanism consumes too much system resources and is weak in applicability to generic objects.

Method used

By determining the scene template corresponding to the scene object, if the preset conditions are met, the scene data is separated and dynamic data is copied for storage, thereby improving the data processing efficiency.

Benefits of technology

Reduce the copying and copying of all data, reduce the frequency of deserialization, save CPU and other resources, and improve the efficiency of writing to objects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112130811B_ABST
    Figure CN112130811B_ABST
Patent Text Reader

Abstract

The present disclosure belongs to the field of computer technology, and relates to a data processing method and device, a computer-readable storage medium, and an electronic device. The method includes: determining a scene template corresponding to a scene object; if the scene template meets a first preset condition, separating and processing the scene data according to the attributes of the scene data in the scene object; based on the result of the separation processing, determining the dynamic data in the scene data, and copying the data for storage. The present disclosure, by separating and processing the scene data, only partially copies the dynamic data, on the one hand, reduces the heavy workload of duplicating and copying all the data, reduces the frequency of deserialization, and saves resources such as the CPU; on the other hand, the dynamic data can be stored in the memory, reducing the operation process of copying data and improving the efficiency of writing objects.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a data processing method and a data processing device, a computer-readable storage medium, and an electronic device. Background Art

[0002] In Internet applications, data exchange between servers mostly uses strings, such as JavaScript Object Notation (JSON), while data within the server is mostly implemented through data sharing. For example, in a store decoration system, the templates used by merchants to decorate floors are stored in memory or cache. When merchants are decorating, they need to deserialize the template data into template data objects, and then fill them into the decoration instance data according to the needs, and finally convert the data into JSON strings. Correspondingly, the front-end server can dynamically build a web page based on the received data and provide the constructed web page to the client browser. In order to improve the experience of merchants and users, the data processing performance within the server is very critical. Therefore, how to improve the data conversion within the server, especially the modification efficiency of shared data, is a topic worthy of study.

[0003] The following two methods are usually used to improve the modification efficiency of shared data: first, using the reflection mechanism to generate data objects; second, using deserialization to generate data objects, such as the fastjson library (a Java library) or the native deserialization method of Java (a computer programming language). However, both methods use the reflection mechanism, which consumes too much system resources and processing time and cannot meet the processing requirements in a high-concurrency environment. In addition, the second method is less applicable to generic objects.

[0004] In view of this, there is an urgent need in the art to develop a new data processing method and device.

[0005] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0006] The purpose of the present disclosure is to provide a data processing method, a data processing device, a computer-readable storage medium and an electronic device, thereby at least to a certain extent overcoming the problems of excessive data sharing consumption and low data modification efficiency caused by the limitations of related technologies.

[0007] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0008] According to a first aspect of an embodiment of the present invention, a data processing method is provided, the method comprising: determining a scene template corresponding to a scene object; if the scene template satisfies a first preset condition, separating and processing the scene data according to attributes of the scene data in the scene object; based on a result of the separation processing, determining dynamic data in the scene data, and copying the dynamic data for storage.

[0009] In an exemplary embodiment of the present invention, if the scene template satisfies a first preset condition, the scene data is separated and processed according to the attributes of the scene data in the scene object, including: determining a sub-thread in a running state, and extracting multiple sub-scene templates in the sub-thread; querying in the sub-thread whether there are other sub-scene templates that are identical to one of the sub-scene templates; if there are other sub-scene templates that are identical to the sub-scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object.

[0010] In an exemplary embodiment of the present invention, if the scene template satisfies a first preset condition, the scene data is separated and processed according to the attributes of the scene data in the scene object, including: determining a main thread in a running state, and determining a plurality of sub-threads in a running state in the main thread; extracting a running scene template in a running state in the sub-thread, and querying whether there are other running scene templates that are the same as the running scene template; if there are other running scene templates that are the same as the running scene template, separating and processing the scene data according to the attributes of the scene data in the scene object.

[0011] In an exemplary embodiment of the present invention, the method further includes: starting a sub-container object and receiving a creation request; and creating the scene object in the sub-container object according to the creation request.

[0012] In an exemplary embodiment of the present invention, after the dynamic data is copied and stored, the method further includes: modifying the copied dynamic data according to the scene template to determine the target data; if the target data meets a second preset condition, filling the target data into the scene template to determine the scene interface corresponding to the scene object.

[0013] In an exemplary embodiment of the present invention, the method further includes: storing the target data in a parent container object associated with the child container object.

[0014] In an exemplary embodiment of the present invention, the scene template includes a layout and / or a style for defining the scene object.

[0015] According to a second aspect of an embodiment of the present invention, there is provided a data processing device, the device comprising: a template determination module, configured to determine the scene templates corresponding to each scene object; wherein one scene object corresponds to one or more scene templates; a data separation module, configured to separate the scene data according to the attributes of the scene data in the scene object if the scene template satisfies a first preset condition; and a data copy module, configured to determine the dynamic data in the scene data based on the result of the separation processing, and copy the dynamic data for storage.

[0016] According to a third aspect of an embodiment of the present invention, there is provided an electronic device, comprising: a processor and a memory; wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the data processing method of any of the above exemplary embodiments is implemented.

[0017] According to a fourth aspect of an embodiment of the present invention, there is provided a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the data processing method in any of the above exemplary embodiments is implemented.

[0018] It can be seen from the above technical solutions that the data processing method, data processing device, computer storage medium and electronic device in the exemplary embodiments of the present invention have at least the following advantages and positive effects:

[0019] In the method and device provided by the exemplary embodiments of the present disclosure, by separating the scene data and only partially copying the dynamic data, on the one hand, the duplication and copying of all data are avoided, the frequency of deserialization is avoided, and resources such as CPU are saved; on the other hand, the dynamic data can be stored in the memory, reducing the copying and caching of data and improving the efficiency of writing objects.

[0020] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0022] Figure 1 A flowchart schematically illustrates a data processing method in an exemplary embodiment of the present disclosure;

[0023] Figure 2A schematic flow chart of a method for separating and processing scene data in an exemplary embodiment of the present disclosure is schematically shown;

[0024] Figure 3 A flowchart schematically illustrates another method for separating and processing scene data in an exemplary embodiment of the present disclosure;

[0025] Figure 4 A flowchart schematically illustrates a method for creating a scene object in an exemplary embodiment of the present disclosure;

[0026] Figure 5 A schematic diagram schematically illustrates a flow chart of a method for determining a scene interface in an exemplary embodiment of the present disclosure;

[0027] Figure 6 A flowchart schematically illustrates a data processing method in an application scenario in an exemplary embodiment of the present disclosure;

[0028] Figure 7 A schematic flow chart schematically illustrates a method for separating and processing the data in an application scenario in an exemplary embodiment of the present disclosure;

[0029] Figure 8 A schematic diagram of the structure of a data processing device in an exemplary embodiment of the present disclosure is shown;

[0030] Fig. 9 An electronic device for implementing a data processing method in an exemplary embodiment of the present disclosure is schematically shown;

[0031] Fig.10 A computer-readable storage medium for implementing a data processing method in an exemplary embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0032] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as being limited to the examples set forth herein; on the contrary, these embodiments are provided so that the present disclosure will be more comprehensive and complete, and the concepts of the example embodiments are fully conveyed to those skilled in the art. The described features, structures, or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0033] The terms "a", "an", "the" and "said" are used in this specification to indicate the presence of one or more elements / components / etc.; the terms "including" and "having" are used to express an open-ended inclusion and mean that additional elements / components / etc. may exist in addition to the listed elements / components / etc.; the terms "first" and "second" etc. are used only as labels and are not intended to limit the quantity of their objects.

[0034] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings represent the same or similar parts, and their repeated descriptions will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities.

[0035] In view of the problems existing in the related art, the present disclosure proposes a data processing method. Figure 1 A flow chart of a data processing method is shown, Figure 1 As shown, the data processing method includes at least the following steps:

[0036] Step S101: Determine a scene template corresponding to a scene object.

[0037] Step S102: If the scene template meets the first preset condition, the scene data is separated according to the attributes of the scene data in the scene object.

[0038] Step S103: Based on the result of the separation process, determine the dynamic data in the scene data, and copy the dynamic data for storage.

[0039] In an exemplary embodiment of the present disclosure, after separating the scene data, the present disclosure only makes a partial copy of the dynamic data. On the one hand, it reduces the heavy workload of duplicating and copying all the data, reduces the frequency of deserialization, and saves CPU and other resources; on the other hand, it can save the dynamic data in the memory, reduces the operation process of data copying, and improves the efficiency of writing objects.

[0040] The following is a detailed description of each step of the data processing method.

[0041] In step S101, a scene template corresponding to a scene object is determined.

[0042] In an exemplary embodiment of the present disclosure, a scene object may be an object for displaying a scene interface, and a scene object may include a scene template. Each scene object may correspond to one or more scene templates, that is, one scene template may be dedicated to one scene object, and multiple scene objects may also share one scene template. The scene template is mainly used to define the layout or display mode of the scene object in the scene interface, or to define the layout and display mode of the scene object. The scene interface is created by the scene object. One scene object corresponds to one scene interface. In an optional embodiment, the scene template includes a layout and / or style for defining the scene object. For example, the scene object may be a floor to be decorated, so the style of the scene object may be a floor decoration style including objects, spatial postures, etc.; the layout of the scene object may include specific placement positions of objects, furniture, etc. in the floor, etc. In this optional embodiment, given the layout and style of the scene object, a method for quickly generating and displaying the scene interface is provided, so that the scene object can quickly generate the scene interface according to the layout and style in the scene template, which is convenient for the generation and rendering of the scene interface.

[0043] The scene template can be defined using a Cascading Style Sheets (CSS) file. When a scene object is created and the corresponding scene interface needs to be displayed, the scene object can load the scene template corresponding to the scene object; when the scene object exits, the scene template corresponding to the scene object can be released. Therefore, when a scene object is created, the corresponding scene template has been determined.

[0044] In step S102, if the scene template meets the first preset condition, the scene data is separated according to the attributes of the scene data in the scene object.

[0045] In an exemplary embodiment of the present disclosure, the scene object may also include scene data, which is data such as the position and size of the scene in which the scene object is located, and data such as the position and size of other objects in the scene. The first preset condition is a condition for determining whether the scene data in the scene object is to be separated and processed, and the first preset condition may be preset according to the attributes of the scene data.

[0046] In an alternative embodiment, Figure 2 A flow chart of a method for separating and processing scene data is shown, such as Figure 2As shown, the method at least includes the following steps: in step S201, a sub-thread in a running state is determined, and multiple sub-scene templates in the sub-thread are extracted. For example, the sub-thread can be a thread that executes the scene data of the floor to be decorated and fills it in the scene template. In the thread, there can be multiple sub-scene templates, and these sub-scene templates can be the same or different. Therefore, multiple sub-scene templates in a sub-thread can be determined. When determining the thread, it can be determined according to the name of the thread, the id number of the thread, etc. In step S202, in the sub-thread, it is queried whether there are other sub-scene templates that are the same as one of the sub-thread templates. After receiving the query request, the sub-scene templates can be compared to determine whether there is a situation in which the same sub-scene template is referenced multiple times in the same thread. In step S203, if there are other sub-scene templates that are the same as the sub-scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object. If there are other sub-scene templates that are the same as a sub-scene template, that is, the reference count of a sub-scene template is greater than 1, it can be separated and processed according to the attributes of the scene data. Among them, the attribute can be the fluidity of the scene data, that is, the separation of static data and dynamic data. Static data can be data that basically does not change, such as static resources of the website (HTML, JavaScript, CSS, img and other files); dynamic data can be data that is frequently accessed and changes, such as background applications. For example, for two sets of floors to be decorated owned by the same merchant, the merchant can choose the same decoration template to decorate these two sets of floors to be decorated. In this scenario, there is a case where the reference count of the decoration template is greater than 1, so the scene data needs to be separated from static and dynamic data.

[0047] In an alternative embodiment, Figure 3 Another method flow chart of separating and processing scene data is shown. Figure 3As shown, the method may at least include the following steps: in step S301, determine the main thread in the running state, and determine the multiple sub-threads in the running state in the main thread. For example, the sub-thread may be a thread that executes the scene data of the floor to be decorated and fills it in the scene template. Correspondingly, the thread that generates these sub-threads is the main thread, which is executed at the beginning of the program. Therefore, by determining a main thread in the running state, multiple sub-threads therein can be determined according to the creation relationship. In step S302, extract the running scene template in the running state in the sub-thread, and query whether there are other running scene templates that are the same as the running scene template. In a high concurrency environment, all sub-threads of the main thread may have multiple sub-threads that are in the running state. Therefore, multiple running scene templates in the running state can be determined according to the name of the thread, the id number of the thread, etc. After receiving the query request, the running scene templates can be compared to determine whether there are other running scene templates that are the same as a running scene template. In step S303, if there are other running scene templates that are the same as the running scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object. If there are other running scene templates that are the same as a running scene template, that is, the reference count of a running scene template is greater than 1, it can be separated according to the attributes of the scene data. Among them, the attribute can be the fluidity of the scene data, that is, static data and dynamic data are separated. Static data can be data that basically does not change, such as static resources of the website (HTML, JavaScript, CSS, img and other files); dynamic data can be data that is frequently accessed and changes, such as background applications. For example, when two different businesses are renovating a floor to be renovated at the same time, they may choose the same decoration template. This situation also belongs to the situation where the reference count of the decoration template is greater than 1, and the scene data in this scenario also needs to be separated.

[0048] In an exemplary embodiment of the present disclosure, Figure 4 A flow chart of a method for creating a scene object is shown in FIG. Figure 4As shown, the method at least includes the following steps: In step S401, a subcontainer object is started and a creation request is received. When the application is started, a container object is created. An application may contain one or more container objects, and different application entries may correspond to different container objects. A container object may be an object used for window display, providing a display framework, such as providing a page or a window, and the container object may include its own name or logo. In step S402, according to the creation request, a scene object is created in the subcontainer object. According to the logic of the application, a scene object in the container object will be created (for example, a scene object corresponding to the main interface of the application), and the scene object is the scene object that currently needs to be displayed in the interface. A container object may correspond to one or more scene objects. The method of the container object may include a display method of the scene object. By using a certain display method, the scene interface corresponding to the scene object may be displayed in the corresponding window of the container object through the method. The methods included in a container object may also include other methods for managing the life cycle of the scene object. For example, it may include a method for closing a scene object, a method for hiding a scene object, etc., which is not particularly limited in this exemplary embodiment.

[0049] In an exemplary embodiment of the present disclosure, Figure 5 A method for determining a scene interface is shown, such as Figure 5As shown, the method at least includes the following steps: in step S501, according to the scene template, the copied dynamic data is modified to determine the target data. Since different scene templates have different requirements on the type or format of data, the same dynamic data needs to be modified to fill in different scene templates. In order to avoid losing the original dynamic data in actual use, the dynamic data can be copied. According to the requirements of the scene template for data, the copied dynamic data of the scene template to be used is modified, and the modified dynamic data can be determined as the target data, and the original dynamic data is stored after serialization, such as stored in a hard disk to avoid loss. In step S502, if the target data meets the second preset condition, the target data is filled into the scene template to determine the scene interface corresponding to the scene object. The second preset condition is preset according to the data attribute of the dynamic data, and the second preset condition is a condition for screening the dynamic data according to the data attribute. If the target data meets the second preset condition, the target data can be filled into the scene template. For example, for a floor to be decorated, if the target data satisfies the second preset condition, it can be determined that the decorated floor can be decorated according to the scene template corresponding to the target data, that is, the target data can be filled into the layout and / or style of the expected decoration of the floor to be decorated to determine the specific placement of items, furniture, etc. on the floor to be decorated, as well as the floor decoration style of items, space posture, etc. In an optional embodiment, the target data can be stored in a parent container object associated with a child container object. In order to facilitate the continued use of the target data later, the target data can also be stored in the parent container object corresponding to the child container. Since the child container object can call the data in the parent container object, merging each target data into the parent container object is not only convenient for storage, but also convenient for each child container object to call the updated data.

[0050] The data processing method in the embodiment of the present disclosure is described in detail below in conjunction with an application scenario.

[0051] Take the floor to be renovated as the scene object. Figure 6 A flow chart of a data processing method in an application scenario is shown, such as Figure 6As shown, in order to speed up access to scene templates, the scene objects are stored in memory through guava (a java library), which can reduce the number of read and write times of the cache server, avoid storing cached data sequences and deserialization operations, and reduce the loss of network performance caused by data duplication and copying. The parent container object of the floor to be decorated is the root container, which stores static data, i.e., the style and layout of the floor to be decorated, and also stores dynamic data, i.e., the data in the corresponding data source. As a parent container, the data therein can be sent to the container and the brother container of the same level as the container, and the two containers respectively store static data and dynamic data obtained from the root container. Similarly, the two child containers also store static data and dynamic data obtained from the container respectively. For the dynamic data in the data source, the data can be filtered by setting conditions so that different floors to be decorated can be decorated using different scene templates.

[0052] In order not to affect the data in the memory, the dynamic data can be copied. Figure 7 A flow chart of a method for separating and processing scene data is shown, as shown in Figure 7 As shown, the scene data is separated into dynamic and static parts according to the fluidity of the data. The style and layout data in the scene template are stored on the left side of the container. This part of the data basically does not change during the rendering process of the decoration template; the sample data in the scene template is stored on the right side of the container. Even if the same template is used on different floors, this part of the data may be different. According to the difference in fluidity of these two parts of data, the two parts are separated into dynamic and static parts. The function of dynamic and static separation can be implemented in the form of pseudocode, etc. The specific encoding method is not particularly limited in this exemplary embodiment.

[0053] For example, the encoding process can be judged by the following two scenarios:

[0054] a. In the same thread, the same scene template exists;

[0055] b. In the current memory, multiple threads execute the same scene template.

[0056] When each thread executes the same scene template, the number of times the scene template is used will be accumulated. After the execution is completed, the corresponding subtraction operation will be performed. When the judgment condition a or b is met, it indicates that the reference count of the scene template is greater than 1, and the judgment result is true. If the judgment result is true, the scene data is separated into dynamic and static, and the dynamic data therein is further copied. Since the child container can access the data in the parent container, the partially copied dynamic data can be taken out and merged, and then saved in the root container for the root container to reference the merged data.

[0057] In an exemplary embodiment of the present disclosure, after separating the scene data, the present disclosure only makes a partial copy of the dynamic data. On the one hand, it reduces the heavy workload of duplicating and copying all the data, reduces the frequency of deserialization, and saves CPU and other resources; on the other hand, it can save the dynamic data in the memory, reduces the operation process of data copying, and improves the efficiency of writing objects.

[0058] Furthermore, in an exemplary embodiment of the present disclosure, a data processing device is also provided. Figure 8 A schematic diagram of the structure of a data processing device is shown in FIG. Figure 8 As shown, the data processing device 800 may include: a template determination module 801, a data separation module 802, and a data copy module 803. Among them:

[0059] The template determination module 801 is configured to determine the scene template corresponding to each scene object; wherein one scene object corresponds to one or more scene templates; the data separation module 802 is configured to separate the scene data according to the attributes of the scene data in the scene object if the scene template meets the first preset condition; the data copy module 803 is configured to determine the dynamic data in the scene data based on the result of the separation processing, and copy the dynamic data for storage.

[0060] The specific details of the above-mentioned data processing device have been described in detail in the corresponding data processing method, so they will not be repeated here.

[0061] It should be noted that, although several modules or units of the data processing device 800 are mentioned in the above detailed description, such division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0062] In addition, in an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.

[0063] Refer to the following Fig. 9 An electronic device 900 according to such an embodiment of the present invention is described. Fig. 9 The electronic device 900 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0064] like Fig. 9As shown, the electronic device 900 is in the form of a general computing device. The components of the electronic device 900 may include, but are not limited to: the at least one processing unit 910, the at least one storage unit 920, a bus 930 connecting different system components (including the storage unit 920 and the processing unit 910), and a display unit 940.

[0065] The storage unit stores program codes, which can be executed by the processing unit 910, so that the processing unit 910 executes the steps according to various exemplary embodiments of the present invention described in the above “Exemplary Method” section of this specification.

[0066] The storage unit 920 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 921 and / or a cache memory unit 922 , and may further include a read-only memory unit (ROM) 923 .

[0067] The storage unit 920 may also include a program / utility 924 having a set (at least one) of program modules 925, such program modules 925 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0068] Bus 930 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0069] The electronic device 900 may also communicate with one or more external devices 1100 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 900, and / or communicate with any device that enables the electronic device 900 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 950. Furthermore, the electronic device 900 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 960. As shown, the network adapter 940 communicates with other modules of the electronic device 900 via a bus 930. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 900, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0070] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the embodiment of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiment of the present disclosure.

[0071] In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the above method of the present specification is stored. In some possible embodiments, various aspects of the present invention can also be implemented in the form of a program product, which includes a program code, and when the program product is run on a terminal device, the program code is used to enable the terminal device to perform the steps according to various exemplary embodiments of the present invention described in the above "Exemplary Method" section of the present specification.

[0072] refer to Fig.10 As shown, a program product 1000 for implementing the above method according to an embodiment of the present invention is described, which can adopt a portable compact disk read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto. In this document, a readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, an apparatus or a device.

[0073] The program product may use any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0074] Computer readable signal media may include data signals propagated in baseband or as part of a carrier wave, in which readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Readable signal media may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0075] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0076] Program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., through the Internet using an Internet service provider).

[0077] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure. The specification and examples are to be considered as exemplary only, and the true scope and spirit of the present disclosure are indicated by the claims.

Claims

1. A data processing method, characterized in that: The method comprises: Determine a scene template corresponding to the scene object; If the scene template meets the first preset condition, the scene data is separated and processed according to the attribute of the scene data in the scene object; If the scene template satisfies the first preset condition, the scene data is separated and processed according to the attribute of the scene data in the scene object, including: Determine a sub-thread in a running state, and extract multiple sub-scene templates in the sub-thread; Querying in the sub-thread whether there is another sub-scene template that is the same as one of the sub-scene templates; If there are other sub-scene templates that are the same as the sub-scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object; the attributes of the scene data include the fluidity of the scene data; Based on the result of the separation process, the dynamic data in the scene data is determined, and the dynamic data is copied for storage.

2. The data processing method according to claim 1, characterized in that: If the scene template satisfies the first preset condition, the scene data is separated and processed according to the attribute of the scene data in the scene object, further comprising: Determine a main thread that is in a running state, and determine a plurality of sub-threads that are in a running state in the main thread; Extracting a running scene template in the running state in the sub-thread, and querying whether there are other running scene templates that are the same as the running scene template; If there are other running scene templates that are the same as the running scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object.

3. The data processing method according to claim 1, characterized in that: The method further comprises: Start the child container object and receive the creation request; According to the creation request, the scene object is created in the sub-container object.

4. The data processing method according to claim 3, characterized in that: After copying the dynamic data for storage, the method further includes: Modifying the copied dynamic data according to the scene template to determine target data; If the target data meets the second preset condition, the target data is filled into the scene template to determine the scene interface corresponding to the scene object.

5. The data processing method according to claim 4, characterized in that: The method further comprises: The target data is stored in a parent container object associated with the child container object.

6. The data processing method according to claim 1, characterized in that: The scene template includes a layout and / or style for defining the scene object.

7. A data processing device, characterized in that: include: The template determination module is configured to determine the scene templates corresponding to each scene object; wherein one scene object corresponds to one or more scene templates; A data separation module, configured to separate the scene data according to the attributes of the scene data in the scene object if the scene template meets the first preset condition; A data separation module is configured to determine a sub-thread in a running state and extract a plurality of sub-scene templates in the sub-thread; Querying in the sub-thread whether there is another sub-scene template that is the same as one of the sub-scene templates; If there are other sub-scene templates that are the same as the sub-scene template, the scene data is separated and processed according to the attributes of the scene data in the scene object; the attributes of the scene data include the fluidity of the scene data; The data copy module is configured to determine the dynamic data in the scene data based on the result of the separation processing, and copy the dynamic data for storage.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the data processing method according to any one of claims 1 to 6 is implemented.

9. An electronic device, characterized in that: include: processor; A memory, configured to store executable instructions of the processor; The processor is configured to execute the data processing method according to any one of claims 1 to 6 by executing the executable instructions.

Citation Information

Patent Citations

  • Method and device for storing dynamic attribute data in temporal diagram data

    CN106227794A

  • Extraction and reapplication of design information to existing websites

    US20090019386A1