CN113326082A - Application program starting method, electronic equipment and storage medium - Google Patents

Application program starting method, electronic equipment and storage medium Download PDF

Info

Publication number
CN113326082A
CN113326082A CN202110875553.1A CN202110875553A CN113326082A CN 113326082 A CN113326082 A CN 113326082A CN 202110875553 A CN202110875553 A CN 202110875553A CN 113326082 A CN113326082 A CN 113326082A
Authority
CN
China
Prior art keywords
starting
item
started
items
application program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110875553.1A
Other languages
Chinese (zh)
Inventor
张云皓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202110875553.1A priority Critical patent/CN113326082A/en
Publication of CN113326082A publication Critical patent/CN113326082A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The disclosure relates to a starting method of an application program, electronic equipment and a storage medium, and relates to the technical field of computers. The embodiment of the disclosure at least solves the problem that the APP starting time is too long in the related art. The method comprises the following steps: acquiring current dependency information of a current startup item in application software from a preset configuration file, wherein the current dependency information comprises an identifier of a to-be-started item dependent on the current startup item; acquiring thread distribution information of the item to be started from a preset configuration file according to the identifier of the item to be started; the thread allocation information of one item to be started is used for indicating that one item to be started is started in the main thread or the sub-thread; and starting the item to be started according to the thread distribution information of the item to be started after the current starting item is executed.

Description

Application program starting method, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method for starting an application program, an electronic device, and a storage medium.
Background
With the update of an Application (APP) of an electronic device, the number of start items of different functions in the APP is gradually increased, and the start sequence between the newly increased start item and the original start item is disordered, which may result in an excessively long start time of the APP. In the related art, the problem of long APP starting time caused by starting sequence confusion among starting items is mainly solved in a mode of decoupling the starting items. Specifically, in the process of developing and registering the APP, developers write different starting items into different data files respectively, register and package the data files into an installation package according to the starting sequence of the different starting items, and upload the installation package to the server. Correspondingly, the electronic equipment downloads the installation package from the server, and after the APP is installed, when the APP is started, the starting items in the installation package are sequentially called from different data files according to the registration sequence of the data files.
By adopting the means, although the starting items in the APP can be decoupled, and the starting time caused by the disordered starting sequence among the starting items is further reduced, the problem that the starting time of the APP is long due to the excessive starting items is still not fundamentally solved.
Disclosure of Invention
The disclosure provides an application program starting method, electronic equipment and a storage medium, so as to at least solve the problem that in the related art, the APP starting time is too long. The technical scheme of the disclosure is as follows:
according to a first aspect of the embodiments of the present disclosure, there is provided a method for starting an application program, including: acquiring current dependency information of a current startup item in an application program from a preset configuration file, wherein the current dependency information comprises an identifier of a to-be-started item dependent on the current startup item; acquiring thread distribution information of the item to be started from a preset configuration file according to the identifier of the item to be started; the thread allocation information of an item to be started is used for indicating whether the item to be started needs to be started in the main thread; after the current starting item is executed, starting the item to be started according to the thread distribution information of the item to be started; the preset configuration file is generated based on the starting information of all starting items in the application program.
Optionally, the "starting the item to be started according to the thread allocation information of the item to be started" includes: according to the thread allocation information of the items to be started, allocating a main thread for a first item to be started in the items to be started, executing the first item to be started in the main thread, allocating a sub-thread for a second item to be started in the items to be started, and starting the second item to be started in the sub-thread.
Optionally, the "assigning a child thread to a second to-be-started item in the to-be-started item" includes: under the condition that the current available concurrency number of the sub threads is smaller than the number of the second items to be started, the starting priority of the second items to be started is obtained from a preset configuration file; and distributing the sub-thread for the second item to be started according to the starting priority of the second item to be started.
Optionally, before "acquiring the current dependency information of the currently launched item in the application", the method further includes: and determining that all startup items in the application program have no circular dependence, and starting the initial startup item in the application program.
Optionally, the "determining that all startup items in the application program have no cyclic dependency" includes:
acquiring the dependency information of all startup items, and determining a dependency link according to the dependency information of all startup items; the dependency link is used for reflecting the dependency relationship of the starting item in the application program; starting to traverse the dependent link, and acquiring the mark information of the current starting item to be accessed in the dependent link in the traversing access process; the marking information of the current starting item to be accessed is used for indicating whether the current starting item to be accessed is in an accessed state in the accessing process; if the current starting item to be accessed is in the non-accessed state, the marking information of the current starting item to be accessed is changed into the accessed state; if the current starting item to be accessed is in the accessed state, terminating traversal; and if all the starting items in the dependent link are successfully traversed, determining that no cyclic dependence exists in all the starting items. .
Optionally, the method further includes: and acquiring an installation package of the application program from the server, acquiring the dependency information of all the startup items from the installation package in the process of installing the application program, and storing the acquired dependency information.
Optionally, the method further includes: after all starting items of the application program are executed, generating a starting log, and sending the starting log to a server; the starting log comprises the starting time, the execution ending time and the thread allocation result of each starting item, and the starting log is used for providing reference for optimizing the starting duration of the application program.
According to a second aspect of the embodiments of the present disclosure, there is provided an electronic device, including an obtaining unit and a starting unit; the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring current dependency information of a current startup item in an application program from a preset configuration file, and the current dependency information comprises an identifier of an item to be started, which depends on the current startup item; the obtaining unit is further used for obtaining thread distribution information of the item to be started from a preset configuration file according to the identifier of the item to be started; the thread allocation information of an item to be started is used for indicating whether the item to be started needs to be started in the main thread; the starting unit is used for starting the item to be started according to the thread distribution information of the item to be started, which is acquired by the acquisition unit, after the execution of the current starting item is finished; the preset configuration file is generated based on the starting information of all starting items in the application program.
Optionally, the starting unit is specifically configured to: according to the thread allocation information of the items to be started, allocating a main thread for a first item to be started in the items to be started, executing the first item to be started in the main thread, allocating a sub-thread for a second item to be started in the items to be started, and starting the second item to be started in the sub-thread.
Optionally, the starting unit is specifically configured to: under the condition that the current available concurrency number of the sub threads is smaller than the number of the second items to be started, the starting priority of the second items to be started is obtained from a preset configuration file; and distributing the sub-thread for the second item to be started according to the starting priority of the second item to be started.
Optionally, the electronic device further includes a determining unit; the determining unit is used for determining that all starting items in the application program have no cyclic dependence; and the starting unit is also used for starting a starting item in the application program.
Optionally, the determining unit is specifically configured to: acquiring the dependency information of all startup items, and determining a dependency link according to the dependency information of all startup items; the dependency link is used for reflecting the dependency relationship of the starting item in the application program; starting to traverse the dependent link, and acquiring the mark information of the current starting item to be accessed in the dependent link in the traversing access process; the marking information of the current starting item to be accessed is used for indicating whether the current starting item to be accessed is in an accessed state in the accessing process; if the current starting item to be accessed is in the non-accessed state, the marking information of the current starting item to be accessed is changed into the accessed state; if the current starting item to be accessed is in the accessed state, terminating traversal; and if all the starting items in the dependent link are successfully traversed, determining that no cyclic dependence exists in all the starting items.
Optionally, the obtaining unit is further configured to: and acquiring an installation package of the application program from the server, acquiring the dependency information of all the startup items from the installation package in the process of installing the application program, and storing the acquired dependency information.
Optionally, the electronic device further includes a generating unit and a sending unit; the generating unit is used for generating a starting log after all starting items of the application program are executed; a sending unit, configured to send a start log to a server; the starting log comprises the starting time, the execution ending time and the thread allocation result of each starting item, and the starting log is used for providing reference for optimizing the starting duration of the application program.
Optionally, the electronic device further includes an updating unit; and the updating unit is used for updating the starting information in the preset configuration file according to the starting log.
According to a third aspect of embodiments of the present disclosure, there is provided a computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computer, cause the computer to perform the method for starting an application program of the above-described first aspect.
According to a fourth aspect of the embodiments of the present disclosure, there is provided an electronic apparatus including: a processor and a memory; the memory is used for storing one or more programs, and the one or more programs include computer-executable instructions, and when the electronic device runs, the processor executes the computer-executable instructions stored in the memory, so that the electronic device executes the method for starting the application program of the first aspect.
According to a fifth aspect of embodiments of the present disclosure, there is provided a computer program product including instructions for executing, by a processor, the method for starting an application program of the first aspect.
The technical scheme provided by the disclosure at least brings the following beneficial effects: the technical scheme provided by the disclosure at least brings the following beneficial effects: the electronic equipment firstly obtains the current dependency information of the current startup item in the application program from the preset configuration file, and the current dependency information contains the identification of the to-be-started item dependent on the current startup item, so that the electronic equipment can determine which to-be-started items need to be started after the current startup item is executed. Furthermore, the electronic device may determine that each item to be started needs to be started in a main thread or a sub-thread by obtaining thread allocation information of the item to be started from the preset configuration file, and after the current starting item is executed, allocate the main thread and different sub-threads to different items to be started according to the thread allocation information of each item to be started, and start the item to be started in the corresponding thread. Therefore, the electronic equipment can not only clarify the starting sequence among all the starting items, but also reasonably plan the items to be started in the main thread and the sub-thread, and finally start all the starting items in the application program according to the established starting sequence and the established thread, so that the starting time of the application program can be greatly reduced.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
FIG. 1 is a block diagram illustrating a software processing system architecture in accordance with an exemplary embodiment;
FIG. 2 is one of the flow diagrams illustrating a method for launching an application according to an exemplary embodiment;
FIG. 3 is a second flowchart illustrating a method for starting an application according to an exemplary embodiment;
FIG. 4 is a diagram illustrating a start-up framework for an application in accordance with an illustrative embodiment;
FIG. 5 is a third flowchart illustrating a method for launching an application according to an exemplary embodiment;
FIG. 6 is a fourth flowchart illustrating a method for launching an application, according to an exemplary embodiment;
FIG. 7 is a fifth flowchart illustrating a method for launching an application, according to an exemplary embodiment;
FIG. 8 is a sixth flowchart illustrating a method for launching an application, according to an exemplary embodiment;
FIG. 9 is a first schematic diagram illustrating a configuration of an electronic device in accordance with an illustrative embodiment;
fig. 10 is a schematic structural diagram of an electronic device shown in accordance with an exemplary embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
In addition, in the description of the embodiments of the present disclosure, "/" indicates an OR meaning, for example, A/B may indicate A or B, unless otherwise specified. "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of the present disclosure, "a plurality" means two or more than two.
The starting method of the application program provided by the embodiment of the disclosure can be applied to a software processing system. Fig. 1 shows a schematic diagram of a structure of the software processing system. As shown in fig. 1, a software processing system 10 is used to reduce the start-up duration of an APP. The software processing system 10 includes a server 11 and an electronic device 12. The server 11 is connected to the electronic device 12. The server 11 and the electronic device 12 may be connected in a wired manner or in a wireless manner, which is not limited in the embodiment of the present disclosure.
The server 11 may be a single server, or may be a service cluster composed of a plurality of servers.
The electronic device 12 may be a mobile phone, a tablet Computer, a notebook Computer, an Ultra-mobile Personal Computer (UMPC), a netbook, a Personal Digital Assistant (PDA), and so on. The present disclosure is not particularly limited with respect to the type of electronic device.
The server 11 includes a memory, and may be configured to store all data information in the application program, where the data information includes all startup items for starting the application program, and the data information may be stored in the server in the form of an installation package.
The electronic device 12 may be configured to perform data interaction with the server 11, for example, obtain all startup items of the application program from the server 11, and store all startup items in the local memory, where the startup items include dependency information of the startup items, thread assignment information, startup priority, and the like.
The electronic device 12 may also determine an identifier of the item to be started according to the current dependency information of the current start item, acquire thread allocation information of the item to be started according to the identifier of the item to be started, and start the item to be started according to the thread allocation information of the item to be started after the current start item is executed.
Fig. 2 is a flow diagram illustrating a method for launching an application, according to some example embodiments. In some embodiments, the starting method of the application program may be applied to an electronic device or a server or other similar devices as shown in fig. 1, and the embodiment of the present disclosure is described by taking the application to an electronic device as an example.
As shown in fig. 2, the method for starting an application provided in the embodiment of the present disclosure includes the following steps S201 to S203.
S201, the electronic equipment acquires the dependency information of the current starting item in the application program from a preset configuration file.
Wherein the dependency information comprises an identification of an item to be launched that is dependent on the current launched item; the preset configuration file is generated based on the starting information of all starting items in the application program.
It should be noted that, during software registration, a developer may store the startup item and the startup information of the startup item in a data file, and upload the data file to a server; the start information of one start item corresponds to one data file.
For example, one data file may be a section file, and in the iOS development, the start item information of one start item may be written into one section file by using a section () function in a clone compiler, where the section file is a part of a Mach-O file. The Mach-O file is an executable binary file on the iOS system and comprises a Header file, a Segment file and the like. A Segment file may contain a plurality of Segment files. The developer can upload the Mach-O file to the server.
The starting information of the starting item comprises service attribution information of the starting item, identification of the starting item, description information, dependency information and thread allocation information. The service attribution information of one startup item is used for indicating which service the startup item belongs to; the identification of one starting item is used for representing the identity information of the starting item and is a unique Identity (ID); the description information of the startup item is used for describing the basic function of the startup item; the dependency information of a startup item is used for reflecting the dependency relationship of the startup item, and comprises dependency information which depends on and is started by which startup items; the thread allocation information is used for reflecting whether the startup item needs to be started in the main thread.
In the starting process of the application program, a developer can store the starting information into a preset configuration file of a server; for example, the preset configuration file includes dependency information, thread allocation information, and thread allocation information.
In addition, the developer can update the preset configuration file according to the actual situation so as to optimize the starting process of the application program.
The electronic device may download all data files of the application program from the server, and store the downloaded data files in the local memory.
As a possible implementation manner, the electronic device obtains the start information of the current startup item in the application program from a preset configuration file in the local memory, and obtains the current dependency information of the current startup item from the start information of the current startup item.
It should be noted that the current startup item may be a startup item in execution of any one of the application programs, or may be a start startup item. The current dependency information includes the dependency of the current startup item.
S202, the electronic equipment acquires the thread distribution information of the item to be started from a preset configuration file according to the identification of the item to be started.
The thread allocation information of one item to be started is used for indicating that one item to be started is started in the main thread or the sub-thread.
As a possible implementation manner, the electronic device obtains, according to the identifier of the item to be started, thread allocation information of the item to be started in a preset configuration file of the local memory.
And S203, after the execution of the current starting item is finished, the electronic equipment starts the item to be started according to the thread distribution information of the item to be started.
As a possible implementation manner, after the current startup item is executed, the electronic device searches for the item to be started in the local memory, allocates different items to be started to the main thread and different sub-threads according to the thread allocation information of the item to be started, and starts the item to be started according to the thread allocation result.
For a specific implementation of this step, reference may be made to the subsequent description of the embodiment of the present disclosure, and details are not repeated here.
The technical scheme provided by the disclosure at least brings the following beneficial effects: the technical scheme provided by the disclosure at least brings the following beneficial effects: the electronic equipment firstly obtains the current dependency information of the current startup item in the application program from the preset configuration file, and the current dependency information contains the identification of the to-be-started item dependent on the current startup item, so that the electronic equipment can determine which to-be-started items need to be started after the current startup item is executed. Furthermore, the electronic device may determine that each item to be started needs to be started in a main thread or a sub-thread by obtaining thread allocation information of the item to be started from the preset configuration file, and after the current starting item is executed, allocate the main thread and different sub-threads to different items to be started according to the thread allocation information of each item to be started, and start the item to be started in the corresponding thread. Therefore, the electronic equipment can not only clarify the starting sequence among all the starting items, but also reasonably plan the items to be started in the main thread and the sub-thread, and finally start all the starting items in the application program according to the established starting sequence and the established thread, so that the starting time of the application program can be greatly reduced.
In one design, in order to enable the item to be started, as shown in fig. 3, the foregoing S203 provided in the embodiment of the present disclosure specifically includes the following S2031 to S2034.
S2031, the electronic equipment allocates a main thread for a first item to be started in the items to be started according to the thread allocation information of the items to be started.
As a possible implementation manner, the electronic device determines a first item to be started in the items to be started according to an instruction code set by a developer in the start information of the items to be started, and allocates a main thread to the first item to be started.
It should be noted that the first item to be started is a starting item that is important in function, occupies a lot of thread resources, or has a long execution time. For example, the first item to be launched may be a launch item that involves a User Interface (UI) operation.
During software registration, the developer may set the thread allocation information of the first item to be started to be executed on the main thread.
S2032, the electronic device executes the first item to be started in the main thread.
Illustratively, as shown in FIG. 4, a schematic diagram of a startup framework is shown, wherein T1, T2 are the first items to be started, and the electronic device puts them on the main thread for startup.
S2033, the electronic device allocates a sub thread for a second item to be started in the items to be started.
As a possible implementation manner, the electronic device determines a second item to be started in the items to be started according to an instruction code set by a developer in the starting information of the items to be started, and allocates a sub thread to the second item to be started.
For a specific implementation of this step, reference may be made to the subsequent description of the embodiment of the present disclosure, and details are not repeated here.
S2034, the electronic device starts a second item to be started in the sub thread.
Exemplarily, as shown in FIG. 4, where T3-T6 is the second item to be activated, the electronic device activates it by putting it on the child thread.
The technical scheme provided by the embodiment of the disclosure at least has the following beneficial effects: after the electronic equipment acquires the thread allocation information of the item to be started, main threads or sub threads are allocated to the item to be started according to the thread allocation information of the item to be started, and the item to be started is started in the corresponding main threads or sub threads. Through the characteristics, the electronic equipment can reasonably distribute threads for the items to be started, so that the hardware resources of the electronic equipment are more reasonably utilized.
In one design, in order to allocate a child thread to a second starting item in the items to be started, as shown in fig. 5, the foregoing S2033 provided by the embodiment of the present disclosure specifically includes the following S301 to S304.
S301, the electronic device obtains the current available concurrency number of the sub threads and the number of the second items to be started.
As a possible implementation manner, the electronic device obtains a current available concurrency number of the child threads from a kernel of the electronic device, and obtains a number of second items to be started after determining that the items to be started are the second items to be started.
S302, the electronic equipment judges whether the current available concurrency number of the sub threads is smaller than the number of the second items to be started.
And S303, under the condition that the current available concurrency number of the sub-threads is less than the number of the second items to be started, the electronic equipment acquires the starting priority of the second items to be started from the preset configuration file.
It should be noted that the start information of the start item further includes a start priority. The starting priority of a starting item is used for reflecting the starting priority of the starting item under the same dependency relationship. The higher the launch priority of a launch item, the easier it is for the launch item to be launched first.
As a possible implementation manner, in the case that the currently available concurrency number of the child thread is smaller than the number of the second items to be started, the electronic device obtains the starting priority of the second items to be started from the starting information of the second items to be started.
S304, the electronic equipment allocates a sub thread for the second item to be started according to the starting priority of the second item to be started.
As a possible implementation manner, the electronic device allocates sub-threads to the second item to be started in sequence from high to low according to the starting priority of the second item to be started.
In another case, when the currently available concurrency number of the sub-threads is greater than or equal to the number of the second to-be-started items, the electronic device may randomly allocate the sub-threads for the second to-be-started items.
The technical scheme provided by the embodiment of the disclosure at least has the following beneficial effects: under the condition that the current available concurrency number of the sub-threads is smaller than the number of the second items to be started, the sub-threads can be preferentially distributed to the starting items with high starting priority according to the starting priority, so that the execution sequence of the starting items is defined, the preferential execution of important starting items is guaranteed, and the optimization of software starting is contributed.
In one design, in order to enable the application to be started, as shown in fig. 6, the application starting method provided in the embodiment of the present disclosure further includes, before the above-mentioned S201, the following S401 to S402.
S401, the electronic equipment determines that all starting items in the application program have no circular dependence.
As a possible implementation manner, the electronic device may detect, according to a preset detection method, dependency information of all startup items in the application program, and determine that there is no loop dependency.
It should be noted that the preset detection method may be set in the electronic device in advance by a developer. Loop dependencies can cause the start-up of an application to fall into a dead loop. For example, in a segment dependency relationship, the initiating item a depends on the initiating item B, the initiating item B depends on the initiating item C, and the initiating item C depends on the initiating item a, then the dependency relationship is a circular dependency.
For a specific implementation of this step, reference may be made to the subsequent description of the embodiment of the present disclosure, and details are not repeated here.
S402, starting a starting item in the application program by the electronic equipment.
It should be noted that the initial startup item is a first startup item preset by the developer during software registration. The starting startup item does not need to depend on other startup items, and the startup information of the starting startup item comprises dependency information.
As a possible implementation manner, when the electronic device starts the application program, the electronic device may start the initial startup item according to a startup instruction preset by a developer.
For example, in an iOS system, a starting item is also called a starting item stub, and an electronic device may call a specific starting item stub through a launch stage method.
The technical scheme provided by the embodiment of the disclosure at least has the following beneficial effects: after all the starting items in the application program are determined to have no cyclic dependence, the application program is started, so that the situation that the application program cannot be started successfully due to the existence of the cyclic dependence is avoided, and further the automatic verification of the application program can be realized.
In one design, in order to determine that all startup items in an application program have no loop dependency, as shown in fig. 7, the foregoing S401 provided in the embodiment of the present disclosure specifically includes the following S4011 to S4016.
S4011, the electronic equipment acquires the dependency information of all the startup items.
As a possible implementation manner, the electronic device obtains the dependency information of all the startup items from the local memory.
S4012, the electronic equipment determines a dependent link according to the dependent information of all the starting items.
Wherein, the dependency link is used for reflecting the dependency relationship of the starting item in the application program.
As a possible implementation manner, the electronic device extracts the dependency information of all the startup items in the application program, and establishes a dependency link of all the startup items according to the dependency information.
It should be noted that the nodes in the dependent link are composed of all the startup items in the application program. The electronic device may determine the connection relationship of the nodes in the dependency link according to the dependency relationship between different startup items.
S4013, the electronic device starts traversing the dependent link, and in the traversing access process, acquires the mark information of the current starting item to be accessed in the dependent link.
The mark information of the current startup item to be accessed is used for indicating whether the current startup item to be accessed is in an accessed state in the accessing process.
As a possible implementation manner, the electronic device starts traversing all dependent links of the startup items according to a depth-first algorithm, and acquires the tag information of the startup item to be accessed currently in the dependent links in the traversing access process.
It should be noted that, in the depth-first algorithm, the traversal state of an initiator includes an unaccessed state, an accessed state, and a completed state. The process that the electronic equipment traverses the dependent link comprises an access process and a backtracking process, and in the access process, each starting item to be accessed is in an unaccessed state before being accessed; after the electronic equipment accesses the starting item, the electronic equipment modifies the traversal state of the electronic equipment into an accessed state; in the backtracking process, the electronic device modifies the traversal state of the accessed startup item from the accessed state to the completed state.
It can be understood that, in the accessing process, the marking information of one startup item to be accessed is used for indicating whether one startup item to be accessed is in an accessed state in the accessing process; in the backtracking process, the traversal state corresponding to the marking information of one starting item comprises an accessed state and a completed state.
For example, when the traversal state of a startup item is an unaccessed state, the value of the tag information of the startup item may be 0; when the traversal state of a startup item is the accessed state, the value of the marking information of the startup item can be 1; when the traversal state of a startup item is the completed state, the value of the marking information of the startup item is 2.
S4014, if the current starting item to be accessed is in the state of not being accessed, the electronic equipment changes the marking information of the current starting item to be accessed into the state of being accessed.
For example, in the accessing process, for a currently-to-be-accessed startup item, if the flag information of the startup item is 0, the electronic device changes the flag information of the startup item to 1.
And S4015, if the current starting item to be accessed is in the accessed state, the electronic equipment terminates the traversal.
It can be understood that, if the currently-accessed initiating item is in the accessed state, it indicates that the electronic device has accessed the initiating item before, and therefore, the electronic device may determine that a loop dependency exists in the dependency link, and terminate the traversal.
In some embodiments, if the electronic device determines that there is a cyclical dependency, alarm information is generated and sent to the server.
Wherein, the alarm information includes the identifier of the starting item to be accessed in the accessed state.
S4016, if all the startup items in the dependency link are successfully traversed, the electronic equipment determines that no loop dependency exists in all the startup items.
As a possible implementation manner, if the access process in the traversal can be successfully executed, the electronic device determines that the flag information of all startup items to be accessed is in an unaccessed state, and further determines that there is no circular dependency in all startup items.
For example, in the accessing process, for a first to-be-accessed startup item, if the flag information of the first to-be-accessed startup item is 0, it is determined that the flag information of the first to-be-accessed startup item is in an unaccessed state, and further, after the electronic device has accessed the startup item, it is determined whether the flag information of a next to-be-accessed startup item is in an accessed state until the accessing process is completed.
The technical scheme provided by the embodiment of the disclosure at least has the following beneficial effects: whether cyclic dependence exists in all starting items in the application program can be accurately detected, and if cyclic dependence exists, developers can be timely reminded of timely modifying.
In one design, in order to enable a developer to more intuitively know the starting conditions of the respective startup items, so as to optimize the starting of the application program in a later period, as shown in fig. 8, after all the startup items of the application program are executed, the method for starting the application program provided by the embodiment of the present disclosure further includes the following steps S204 to S205.
And S204, the electronic equipment generates a starting log.
The starting log comprises starting time, execution ending time and thread distribution result of each starting item; the starting log is used for providing reference for optimizing the starting duration of the application program.
As a possible implementation manner, the electronic device records the execution condition of each startup item through a log recorder, and generates a startup log according to the recording result of all startup items.
Json formatted data, which can be viewed through the browser chrome:// tracing/; the startup log may also be displayed on a flame map, through which a developer may observe whether all startup items are densely executed, whether there are distinct blocks between the startup items, and the time taken for each startup item to start. It should be noted that the log recorder is a section of logic algorithm preset by a developer in the process of starting the application program, and is used for recording the starting condition of each starting item.
S205, the electronic equipment sends the starting log to the server.
As a possible implementation manner, the electronic device sends the start log to the server through the communication module.
In addition, the electronic equipment can update the starting information in the preset configuration file according to the starting log, so that the starting information in the preset configuration file is more reasonable.
The technical scheme provided by the embodiment of the disclosure at least has the following beneficial effects: the method and the device can enable developers to more conveniently observe the execution condition of each starting item in the starting process, and facilitate the developers to optimize the application program in the later period.
In one design, in order to enable the electronic device to obtain dependency information of all startup items, the startup method of the application program provided by the embodiment of the present disclosure further includes the following steps S206 to S208.
S206, the electronic equipment obtains the installation package of the application program from the server.
It should be noted that the installation package of the application program may be stored in the server.
As a possible implementation manner, the electronic device downloads the installation package of the application program from the server and installs the application program locally.
S207, the electronic equipment acquires the dependency information of all the startup items from the installation package in the process of installing the application program.
As a possible implementation manner, after downloading the installation package of the application program from the server, the electronic device parses the installation package, and extracts the dependency information of all the startup items in the parsing process.
S208, the electronic equipment stores the acquired dependency information.
As a possible implementation manner, the electronic device stores the acquired dependency information in a local preset configuration file.
The foregoing describes the scheme provided by the embodiments of the present disclosure, primarily from a methodological perspective. To implement the above functions, it includes hardware structures and/or software modules for performing the respective functions. Those of skill in the art will readily appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is performed as hardware or computer software drives hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
The embodiment of the present disclosure may perform division of the functional modules on the device according to the method example, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. Optionally, the division of the modules in the embodiment of the present disclosure is illustrative, and is only a logic function division, and there may be another division manner in actual implementation.
Fig. 9 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure. As shown in fig. 9, the electronic device 50 is configured to reduce a start-up duration of the APP, for example, to execute the start-up method of the application program shown in fig. 2. The electronic device 50 includes an acquisition unit 501 and an activation unit 502.
An obtaining unit 501, configured to obtain current dependency information of a current startup item in an application program from a preset configuration file, where the current dependency information includes an identifier of an item to be started that depends on the current startup item. For example, as shown in fig. 2, the acquisition unit 501 may perform S201.
The obtaining unit 501 is further configured to obtain, according to the identifier of the item to be started, thread allocation information of the item to be started from a preset configuration file. The thread allocation information of an item to be started is used for indicating that the item to be started is started in the main thread or the sub-thread. For example, as shown in fig. 2, the acquisition unit 501 may perform S202.
The starting unit 502 is configured to start the item to be started according to the thread allocation information of the item to be started, which is acquired by the acquiring unit 501, after the current starting item is executed; the preset configuration file is generated based on the starting information of all starting items in the application program. For example, as shown in fig. 2, the starting unit 502 may perform S203.
Optionally, as shown in fig. 9, the starting unit 502 provided in the embodiment of the present disclosure is specifically configured to:
and according to the thread allocation information of the items to be started, allocating a main thread for a first item to be started in the items to be started, and executing the first item to be started in the main thread. For example, as shown in fig. 3, the start unit 502 may perform S2031-S2032.
And distributing a sub-thread for a second item to be started in the items to be started, and starting the second item to be started in the sub-thread. For example, as shown in fig. 3, the start unit 502 may perform S2033 to S2034.
Optionally, as shown in fig. 9, the starting unit 502 provided in the embodiment of the present disclosure is specifically configured to:
and under the condition that the current available concurrency number of the sub threads is less than the number of the second items to be started, generating a preset configuration file from the preset configuration file based on the starting information of all starting items in the application program. And acquiring the starting priority of the second item to be started. For example, as shown in fig. 5, the starting unit 502 may perform S303.
And distributing the sub-thread for the second item to be started according to the starting priority of the second item to be started. For example, as shown in fig. 5, the starting unit 502 may perform S304.
Optionally, as shown in fig. 9, the electronic device provided in the embodiment of the present disclosure further includes a determining unit 503.
A determining unit 503, configured to determine that all startup items in the application program have no cyclic dependency. For example, as shown in fig. 6, the determination unit 503 may perform S401.
The starting unit 502 is further configured to start a starting item in the application. For example, as shown in fig. 6, the starting unit 502 may perform S402.
Optionally, as shown in fig. 9, the determining unit 503 provided in the embodiment of the present disclosure is specifically configured to:
and acquiring the dependency information of all the startup items, and determining a dependency link according to the dependency information of all the startup items. The dependency links are used to reflect the dependencies of startup items in the application. For example, as shown in fig. 7, the determination unit 503 may perform S4011 to S4016.
Starting to traverse the dependent link, and acquiring the mark information of the current starting item to be accessed in the dependent link in the traversing access process; the mark information of the current startup item to be accessed is used for indicating whether the current startup item to be accessed is in an accessed state in the accessing process. For example, as shown in fig. 7, the determination unit 503 may perform S4013.
If the current starting item to be accessed is in the non-accessed state, the marking information of the current starting item to be accessed is changed into the accessed state. For example, as shown in fig. 7, the determination unit 503 may perform S4014.
And if the current starting item to be accessed is in the accessed state, terminating the traversal. For example, as shown in fig. 7, the determination unit 503 may perform S4015.
And if all the starting items in the dependent link are successfully traversed, determining that no cyclic dependence exists in all the starting items. For example, as shown in fig. 7, the determination unit 503 may perform S4016.
Optionally, as shown in fig. 9, the electronic device provided in the embodiment of the present disclosure further includes a generating unit 504 and a sending unit 505.
The generating unit 504 is configured to generate a start log after all the start items of the application are executed. For example, as shown in fig. 8, the generating unit 504 may perform S204.
A sending unit 505, configured to send the start log to the server. The starting log comprises the starting time, the execution ending time and the thread allocation result of each starting item, and the starting log is used for providing reference for optimizing the starting duration of the application program. For example, as shown in fig. 8, the transmitting unit 505 may perform S205.
Optionally, as shown in fig. 9, in the electronic device provided in the embodiment of the present disclosure, the obtaining unit 501 is further configured to:
and acquiring an installation package of the application program from the server, acquiring the dependency information of all the startup items from the installation package in the process of installing the application program, and storing the acquired dependency information.
Optionally, as shown in fig. 9, the electronic device provided in the embodiment of the present disclosure further includes an updating unit 506.
An updating unit 506, configured to update the start information in the preset configuration file according to the start log.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 10 is a schematic structural diagram of an electronic device provided by the present disclosure. As shown in fig. 10, the electronic device 60 is configured to reduce a start-up duration of the APP, for example, to execute the start-up method of the application program shown in fig. 2. The electronic device 60 may include at least one processor 601 and a memory 603 for storing processor-executable instructions. Wherein the processor 601 is configured to execute the instructions in the memory 603 to implement the data processing method in the above-described embodiments.
Additionally, electronic device 60 may also include a communication bus 602 and at least one communication interface 604.
The processor 601 may be a Central Processing Unit (CPU), a micro-processing unit, an ASIC, or one or more integrated circuits for controlling the execution of programs according to the present disclosure.
The communication bus 602 may include a path that conveys information between the aforementioned components.
The communication interface 604 may be any device, such as a transceiver, for communicating with other devices or communication networks, such as an ethernet, a Radio Access Network (RAN), a Wireless Local Area Network (WLAN), etc.
The memory 603 may be, but is not limited to, a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, optical disk storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The memory may be self-contained and connected to the processing unit by a bus. The memory may also be integrated with the processing unit.
The memory 603 is used for storing instructions for executing the disclosed solution, and is controlled by the processor 601. The processor 601 is configured to execute instructions stored in the memory 603 to implement the functions of the disclosed method.
As an example, in conjunction with fig. 9, the functions implemented by the acquisition unit 501, the activation unit 502, the determination unit 503, the generation unit 504, the transmission unit 505, and the update unit 506 in the electronic device 50 are the same as those of the processor 601 in fig. 10.
In particular implementations, processor 601 may include one or more CPUs such as CPU0 and CPU1 in fig. 10 for one embodiment.
In particular implementations, electronic device 60 may include multiple processors, such as processor 601 and processor 607 of FIG. 10, for example, as an embodiment. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
In particular implementations, electronic device 60 may also include an output device 605 and an input device 606, as one embodiment. Output device 605 is in communication with processor 601 and may display information in a variety of ways. For example, the output device 605 may be a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display device, a Cathode Ray Tube (CRT) display device, a projector (projector), or the like. The input device 606 is in communication with the processor 601 and may accept user input in a variety of ways. For example, the input device 606 may be a mouse, a keyboard, a touch screen device, or a sensing device, among others.
Those skilled in the art will appreciate that the configuration shown in fig. 10 is not limiting of the electronic device 60 and may include more or fewer components than shown, or some components may be combined, or a different arrangement of components may be used.
In addition, the present disclosure also provides a computer-readable storage medium including instructions, which when executed by a processor, cause the processor to execute the method for starting an application program as provided in the above embodiments.
In addition, the present disclosure also provides a computer program product comprising instructions which, when executed by a processor, cause the processor to execute the method for starting an application program as provided in the above embodiments.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.

Claims (18)

1. A method for starting an application program, comprising:
acquiring dependency information of a current starting item in the application program from a preset configuration file, wherein the dependency information comprises an identifier of an item to be started, which depends on the current starting item;
acquiring the thread distribution information of the item to be started from the preset configuration file according to the identifier of the item to be started; the thread allocation information of one item to be started is used for indicating that the one item to be started is started in the main thread or the sub-thread;
after the current starting item is executed, starting the item to be started according to the thread distribution information of the item to be started; the preset configuration file is generated based on the starting information of all starting items in the application program.
2. The method for starting an application program according to claim 1, wherein starting the item to be started according to the thread allocation information of the item to be started comprises:
according to the thread allocation information of the items to be started, allocating a main thread for a first item to be started in the items to be started, executing the first item to be started in the main thread, allocating a sub-thread for a second item to be started in the items to be started, and starting the second item to be started in the sub-thread.
3. The method for starting the application program according to claim 2, wherein the allocating a child thread to the second item to be started in the item to be started comprises:
under the condition that the current available concurrency number of the sub-threads is smaller than the number of the second items to be started, acquiring the starting priority of the second items to be started from the preset configuration file;
and distributing sub threads for the second item to be started according to the starting priority of the second item to be started.
4. The method for starting up an application program according to claim 1, wherein before said obtaining the dependency information of the currently started item in the application program, the method further comprises:
and determining that all startup items in the application program have no cyclic dependence, and starting the initial startup item in the application program.
5. The method for starting the application program according to claim 4, wherein the determining that all starting items in the application program have no loop dependency comprises:
acquiring the dependency information of all the startup items, and determining a dependency link according to the dependency information of all the startup items; the dependency link is used for reflecting the dependency relationship of the starting item in the application program;
starting to traverse the dependent link, and acquiring the mark information of the current starting item to be accessed in the dependent link in the traversing access process; the marking information of the current starting item to be accessed is used for indicating whether the current starting item to be accessed is in an accessed state in the access process;
if the current starting item to be accessed is in an unaccessed state, changing the marking information of the current starting item to be accessed into an accessed state;
if the current starting item to be accessed is in an accessed state, terminating traversal;
and if all the starting items in the dependent link are successfully traversed, determining that no cyclic dependence exists in all the starting items.
6. The method for starting the application program according to claim 1, wherein the method further comprises:
and acquiring the installation package of the application program from a server, acquiring the dependency information of all the startup items from the installation package in the process of installing the application program, and storing the acquired dependency information.
7. A method for launching an application according to any of claims 1-6, characterized in that the method further comprises:
after all starting items of the application program are executed, generating a starting log, and sending the starting log to a server; the starting log comprises the starting time, the execution ending time and the thread distribution result of each starting item, and the starting log is used for providing reference for optimizing the starting duration of the application program.
8. The method for starting an application program according to claim 7, further comprising:
and updating the starting information in the preset configuration file according to the starting log.
9. An electronic device, comprising: an acquisition unit and a starting unit;
the acquiring unit is used for acquiring the dependency information of a current starting item in an application program from a preset configuration file, wherein the dependency information comprises an identifier of an item to be started which depends on the current starting item;
the obtaining unit is further configured to obtain thread allocation information of the item to be started from the preset configuration file according to the identifier of the item to be started; the thread allocation information of one item to be started is used for indicating that the one item to be started is started in the main thread or the sub-thread; the preset configuration file is generated based on the starting information of all starting items in the application program;
the starting unit is used for starting the item to be started according to the thread distribution information of the item to be started, which is acquired by the acquiring unit, after the current starting item is executed; the preset configuration file is generated based on the starting information of all starting items in the application program.
10. The electronic device according to claim 9, wherein the activation unit is specifically configured to:
according to the thread allocation information of the items to be started, allocating a main thread for a first item to be started in the items to be started, executing the first item to be started in the main thread, allocating a sub-thread for a second item to be started in the items to be started, and starting the second item to be started in the sub-thread.
11. The electronic device according to claim 10, wherein the activation unit is specifically configured to:
under the condition that the current available concurrency number of the sub-threads is smaller than the number of the second items to be started, the starting priority of the second items to be started is obtained from the preset configuration file;
and distributing sub threads for the second item to be started according to the starting priority of the second item to be started.
12. The electronic device according to claim 9, further comprising a determination unit;
the determining unit is used for determining that all starting items in the application program have no cyclic dependence;
the starting unit is also used for starting a starting item in the application program.
13. The electronic device according to claim 12, wherein the determining unit is specifically configured to:
acquiring the dependency information of all the startup items, and determining a dependency link according to the dependency information of all the startup items; the dependency link is used for reflecting the dependency relationship of the starting item in the application program;
starting to traverse the dependent link, and acquiring the mark information of the current starting item to be accessed in the dependent link in the traversing access process; the marking information of the current starting item to be accessed is used for indicating whether the current starting item to be accessed is in an accessed state in the access process;
if the current starting item to be accessed is in an unaccessed state, changing the marking information of the current starting item to be accessed into an accessed state;
if the current starting item to be accessed is in an accessed state, terminating traversal;
and if all the starting items in the dependent link are successfully traversed, determining that no cyclic dependence exists in all the starting items.
14. The electronic device of claim 10, wherein the obtaining unit is further configured to:
and acquiring the installation package of the application program from a server, acquiring the dependency information of all the startup items from the installation package in the process of installing the application program, and storing the acquired dependency information.
15. The electronic device according to any one of claims 9-14, further comprising a generating unit and a transmitting unit;
the generating unit is used for generating a starting log after all starting items of the application program are executed;
the sending unit is used for sending the starting log to a server; the starting log comprises the starting time, the execution ending time and the thread distribution result of each starting item, and the starting log is used for providing reference for optimizing the starting duration of the application program.
16. The electronic device according to claim 15, further comprising an updating unit;
and the updating unit is used for updating the starting information in the preset configuration file according to the starting log.
17. A computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computer, cause the computer to perform a method of launching an application program as claimed in any of claims 1-8.
18. An electronic device, comprising: a processor and a memory; wherein the memory is configured to store one or more programs, the one or more programs including computer executable instructions that, when executed by the electronic device, are executed by the processor to cause the electronic device to perform the method of launching an application program according to any of claims 1-8.
CN202110875553.1A 2021-07-30 2021-07-30 Application program starting method, electronic equipment and storage medium Pending CN113326082A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110875553.1A CN113326082A (en) 2021-07-30 2021-07-30 Application program starting method, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110875553.1A CN113326082A (en) 2021-07-30 2021-07-30 Application program starting method, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN113326082A true CN113326082A (en) 2021-08-31

Family

ID=77426489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110875553.1A Pending CN113326082A (en) 2021-07-30 2021-07-30 Application program starting method, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113326082A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113885966A (en) * 2021-10-22 2022-01-04 广州九尾信息科技有限公司 Apple application starting optimization method based on binary rearrangement

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766101A (en) * 2017-09-30 2018-03-06 五八有限公司 App starts processing method, device and the equipment of event
CN110442396A (en) * 2019-07-31 2019-11-12 网易(杭州)网络有限公司 Application program launching method and device, storage medium and electronic equipment
CN112685149A (en) * 2020-12-18 2021-04-20 宝能(广州)汽车研究院有限公司 Starting method of android application, storage medium and electronic device
CN112748961A (en) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 Method and device for executing starting task
CN112817657A (en) * 2021-01-29 2021-05-18 北京奇艺世纪科技有限公司 Application program starting item loading method, device and system and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766101A (en) * 2017-09-30 2018-03-06 五八有限公司 App starts processing method, device and the equipment of event
CN110442396A (en) * 2019-07-31 2019-11-12 网易(杭州)网络有限公司 Application program launching method and device, storage medium and electronic equipment
CN112748961A (en) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 Method and device for executing starting task
CN112685149A (en) * 2020-12-18 2021-04-20 宝能(广州)汽车研究院有限公司 Starting method of android application, storage medium and electronic device
CN112817657A (en) * 2021-01-29 2021-05-18 北京奇艺世纪科技有限公司 Application program starting item loading method, device and system and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113885966A (en) * 2021-10-22 2022-01-04 广州九尾信息科技有限公司 Apple application starting optimization method based on binary rearrangement

Similar Documents

Publication Publication Date Title
US11307890B2 (en) Methods and apparatus to manage virtual machines
US11159392B2 (en) Managing service deployment
CN107766126B (en) Container mirror image construction method, system and device and storage medium
CN107766050B (en) Heterogeneous application deployment method and device
CN114008605A (en) Big data application lifecycle management
US10963267B2 (en) Bootstrapping profile-guided compilation and verification
CN110333932A (en) Service orchestration and relationship managing method and system based on container cloud
CN106802939B (en) Method and system for solving data conflict
Hudson et al. libEnsemble users manual
CN113326082A (en) Application program starting method, electronic equipment and storage medium
CN111831567A (en) Application test environment configuration method, device, system and medium
US20180329729A1 (en) Software-defined microservices
US20170094020A1 (en) Processing requests for multi-versioned service
CN111562952B (en) Dynamic loading method and dynamic loading device for double-core intelligent ammeter management unit
US11755309B2 (en) Tagging packages in an application ecosystem
CN115167822A (en) Branch code merging method, device, equipment and storage medium
CN114741137B (en) Software starting method, device, equipment and storage medium based on multi-core microcontroller
CN111506301B (en) Method for bypassing system restriction reflection call and related equipment
TW201303738A (en) Method and device for determining parallelism of tasks of a program
CN111399983B (en) Scheduling method and device based on container scheduling service
US20220318656A1 (en) Model parameter sharing between inference application instances in processing unit of information processing system
CN117009225A (en) Code detection method, device, electronic equipment and storage medium
CN117407277A (en) Function debugging method and device, electronic equipment and computer storage medium
CN115469917A (en) File processing method, device, equipment and storage medium
CN115168228A (en) Process debugging method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination