CN111522645A - Object processing method and device, electronic equipment and computer-readable storage medium - Google Patents

Object processing method and device, electronic equipment and computer-readable storage medium Download PDF

Info

Publication number
CN111522645A
CN111522645A CN202010358488.0A CN202010358488A CN111522645A CN 111522645 A CN111522645 A CN 111522645A CN 202010358488 A CN202010358488 A CN 202010358488A CN 111522645 A CN111522645 A CN 111522645A
Authority
CN
China
Prior art keywords
new
pool
preset
usable
target
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.)
Granted
Application number
CN202010358488.0A
Other languages
Chinese (zh)
Other versions
CN111522645B (en
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 ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network 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 ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN202010358488.0A priority Critical patent/CN111522645B/en
Publication of CN111522645A publication Critical patent/CN111522645A/en
Application granted granted Critical
Publication of CN111522645B publication Critical patent/CN111522645B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

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 provides a processing method and device of an object, electronic equipment and a computer-readable storage medium, and relates to the field of computers. The method comprises the following steps: when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule; generating a usable object based on the target object; storing the usable object to a preset first object pool, and taking the usable object as the new object; when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool, and the new object is stored to a preset second object pool by adopting a preset second rule, so that the new object is taken as the target object when the new object is obtained by adopting the first rule. The method and the device increase the smoothness of the application program operation and improve the user experience.

Description

Object processing method and device, electronic equipment and computer-readable storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method and an apparatus for processing an object, an electronic device, and a computer-readable storage medium.
Background
During the running process of an application program, a large number of objects are created in a memory, but the memory of a virtual machine is limited, the objects cannot be created infinitely, and when some object is no longer needed, the object needs to be recycled. In order to release the energy of developers, a garbage recycling mechanism is introduced into JAVA, and useless objects are automatically identified and recycled.
The garbage collection mechanism is good, but not without cost, and no matter how the garbage collection algorithm is optimized, during collection, execution of all threads is inevitably required to be tentatively set, so that when the garbage collection mechanism is frequently triggered, the operation of an application program is unsmooth, and the user experience is poor.
Disclosure of Invention
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
The disclosure provides an object processing method and device, an electronic device and a computer-readable storage medium, which can solve the problem that when an application program runs, a garbage collection machine is frequently triggered to make the running of the application program unsmooth, and user experience is poor. The technical scheme is as follows:
in a first aspect, a method for processing an object is provided, the method including:
when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule;
generating a usable object based on the target object;
storing the usable object to a preset first object pool, and taking the usable object as the new object;
when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool, and the new object is stored to a preset second object pool by adopting a preset second rule, so that the new object is taken as the target object when the new object is obtained by adopting the first rule.
In a second aspect, there is provided an apparatus for processing an object, the apparatus comprising:
the receiving module is used for receiving a creating instruction for creating a new object;
the acquisition module is used for acquiring a target object by adopting a preset first rule;
a generation module for generating a usable object based on the target object;
the storage module is used for storing the usable object to a preset first object pool and taking the usable object as the new object;
the monitoring module is used for monitoring a garbage collection event aiming at the new object;
and the processing module is used for acquiring the new object from the first object pool and storing the new object to a preset second object pool by adopting a preset second rule so as to enable the new object to be taken as the target object when the new object is acquired by adopting the first rule.
In a third aspect, an electronic device is provided, which includes:
a processor, a memory, and a bus;
the bus is used for connecting the processor and the memory;
the memory is used for storing operation instructions;
the processor is configured to, by invoking the operation instruction, make the processor perform an operation corresponding to the processing method of the object as shown in the first aspect of the present disclosure.
In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the processing method of the object shown in the first aspect of the present disclosure.
The technical scheme provided by the disclosure has the following beneficial effects:
when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule, then generating a usable object based on the target object, storing the usable object to a preset first object pool, taking the usable object as the new object, acquiring the new object from the first object pool when a garbage collection event aiming at the new object is monitored, and storing the new object to a preset second object pool by adopting a preset second rule, so that the new object is taken as the target object when the new object is acquired by adopting the first rule. Therefore, in the running process of the application program, the created new object is stored in the first object pool and used, and when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool and stored in the second object pool, so that the new object can be reused as a target object when the new object is created next time, thereby realizing the reuse of the object, avoiding the situation that the object is frequently created to be destroyed in the running process of the application program, greatly reducing the garbage collection times and the thread pause times, increasing the running smoothness of the application program and improving the user experience. Meanwhile, for a software developer, the objects can be automatically reused, so that people do not need to pay attention to when the objects are discarded, and the labor cost and the time cost are reduced.
Drawings
The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. Throughout the drawings, the same or similar reference numbers refer to the same or similar elements. It should be understood that the drawings are schematic and that elements and features are not necessarily drawn to scale.
Fig. 1 is a schematic flowchart of a method for processing an object according to an embodiment of the present disclosure;
FIG. 2 is a schematic flow chart of creating a new object in the present disclosure;
fig. 3 is a schematic structural diagram of an apparatus for processing an object according to yet another embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of an electronic device for processing an object according to yet another embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the devices, modules or units to be determined as different devices, modules or units, and are not used for limiting the sequence or interdependence relationship of the functions executed by the devices, modules or units.
It is noted that references to "a", "an", and "the" modifications in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that "one or more" may be used unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present disclosure are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
To make the objects, technical solutions and advantages of the present disclosure more apparent, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
The present disclosure provides an object processing method, an object processing apparatus, an electronic device, and a computer-readable storage medium, which aim to solve the above technical problems of the prior art.
The following describes the technical solutions of the present disclosure and how to solve the above technical problems in specific embodiments. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present disclosure will be described below with reference to the accompanying drawings.
In one embodiment, a method for processing an object is provided, as shown in fig. 1, the method including:
step S101, when a creation instruction for creating a new object is received, a target object is obtained by adopting a preset first rule;
among other things, an object in the present disclosure may be an object used by an application during execution. In practical applications, an application program needs to use a large number of objects during the running process, and each object occupies a certain memory space, that is, a large number of objects need to be created in the memory. In the disclosure, when the terminal receives a creation instruction initiated by an application program for creating a new object, the new object is not directly created, but a preset first rule is adopted to obtain a target object, so as to obtain an object that can be used based on the target object.
Step S102, generating a usable object based on the target object;
after the target object is obtained, the target object is not used immediately, but a usable object is generated based on the target object and then used as a new object to be created.
Step S103, storing the usable object to a preset first object pool, and taking the usable object as a new object;
after the usable object is obtained, the usable object is cached in the first object pool, and then the usable object is returned to the application program as a new object, so that the object creation of the application program is completed.
And step S104, when a garbage collection event aiming at the new object is monitored, acquiring the new object from the first object pool, and storing the new object into a preset second object pool by adopting a preset second rule so as to be used as a target object when the new object is acquired by adopting the first rule.
Garbage collection refers to the collection of a discarded object and then the destruction of the object's memory. In the present disclosure, it is possible to identify whether a reference chain exists between an object and a root object by a "root search algorithm", and if not, it is stated that the object is a recoverable object.
After the new object is used by the application program, the new object can be obtained from the first object pool and then cached in the second object pool through the second rule when monitoring that the new object is to be recycled, so that the used new object cannot be recycled by garbage, and the new object is saved and waits to be reused.
In the embodiment of the disclosure, when a creation instruction for creating a new object is received, a target object is acquired by using a preset first rule, then a usable object is generated based on the target object, the usable object is stored in a preset first object pool and serves as the new object, when a garbage collection event for the new object is monitored, the new object is acquired from the first object pool and is stored in a preset second object pool by using a preset second rule, so that the new object serves as the target object when the new object is acquired by using the first rule. Therefore, in the running process of the application program, the created new object is stored in the first object pool and used, and when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool and stored in the second object pool, so that the new object can be reused as a target object when the new object is created next time, thereby realizing the reuse of the object, avoiding the situation that the object is frequently created to be destroyed in the running process of the application program, greatly reducing the garbage collection times and the thread pause times, increasing the running smoothness of the application program and improving the user experience. Meanwhile, for a software developer, the objects can be automatically reused, so that people do not need to pay attention to when the objects are discarded, and the labor cost and the time cost are reduced.
In another embodiment, a detailed description of a method for processing an object as shown in fig. 1 is continued.
Step S101, when a creation instruction for creating a new object is received, a target object is obtained by adopting a preset first rule;
among other things, an object in the present disclosure may be an object used by an application during execution. The application may be installed in a terminal, which may have the following features:
(1) on a hardware architecture, a device has a central processing unit, a memory, an input unit and an output unit, that is, the device is often a microcomputer device having a communication function. In addition, various input modes such as a keyboard, a mouse, a touch screen, a microphone, a camera and the like can be provided, and input can be adjusted as required. Meanwhile, the equipment often has a plurality of output modes, such as a telephone receiver, a display screen and the like, and can be adjusted according to needs;
(2) on a software system, the device must have an operating system, such as Windows Mobile, Symbian, Palm, Android, iOS, and the like. Meanwhile, the operating systems are more and more open, and personalized application programs developed based on the open operating system platforms are infinite, such as a communication book, a schedule, a notebook, a calculator, various games and the like, so that the requirements of personalized users are met to a great extent;
(3) in terms of communication capacity, the device has flexible access mode and high-bandwidth communication performance, and can automatically adjust the selected communication mode according to the selected service and the environment, thereby being convenient for users to use. The device can support GSM (Global System for Mobile Communication), WCDMA (Wideband Code Division Multiple Access), CDMA2000(Code Division Multiple Access), TDSCDMA (Time Division-Synchronous Code Division Multiple Access), Wi-Fi (Wireless-Fidelity), WiMAX (world interoperability for Microwave Access), etc., thereby adapting to various systems of networks, not only supporting voice service, but also supporting various Wireless data services;
(4) in the aspect of function use, the equipment focuses more on humanization, individuation and multi-functionalization. With the development of computer technology, devices enter a human-centered mode from a device-centered mode, and the embedded computing, control technology, artificial intelligence technology, biometric authentication technology and the like are integrated, so that the human-oriented purpose is fully embodied. Due to the development of software technology, the equipment can be adjusted and set according to individual requirements, and is more personalized. Meanwhile, the device integrates a plurality of software and hardware, and the function is more and more powerful.
In practical applications, an application program needs to use a large number of objects during the running process, and each object occupies a certain memory space, that is, a large number of objects need to be created in the memory. In the disclosure, when the terminal receives a creation instruction initiated by an application program for creating a new object, the new object is not directly created, but a preset first rule is adopted to obtain a target object, so as to obtain an object that can be used based on the target object.
In a preferred embodiment of the present disclosure, the create instruction includes an object type of the new object;
the method for acquiring the target object by adopting the preset first rule comprises the following steps:
detecting whether a reusable idle object with the same type as the object exists in the second object pool;
and if so, acquiring the idle object and taking the idle object as a target object.
In particular, objects can be created indefinitely, but the template-class of objects created is limited. That is to say, the types of most of the objects in all the objects created in the program running process are the same, and the same type means reusability, so if the memory of the object can be reused, the object to be destroyed can be reused, and no redundant new object needs to be created, thereby avoiding triggering redundant garbage collection and avoiding the program running jam.
Two object pools may be preset in this disclosure: an in-use object pool (i.e. a first object pool) for storing usable objects with weak references, specifically, holding the in-use objects using the weak references, and waiting for the objects to be discarded; and a free object pool (i.e., a second object pool) for storing reusable objects with strong references, specifically objects whose cache has been discarded, waiting to be reused.
When the application uses the object, the reference of the object is divided into 4 types, thereby enabling the program to control the life cycle of the object more flexibly. These 4 types include: strong references, soft references, weak references, and virtual references.
If an object has a strong reference, the memory of the object is never reclaimed at the time of garbage collection, and the object can be used by the application at all times.
If an object only has soft references, when the memory space is sufficient, the memory of the object cannot be recycled during garbage recycling; if the memory space is not sufficient, its memory is reclaimed. That is, the object can be used by the program as long as its memory is not reclaimed at the time of garbage collection.
Weak references are distinguished from soft references by: objects with only weak references have a more transient lifecycle. In the garbage collection process, once an object with only weak references is found, the memory of the object is collected regardless of whether the current memory space is enough or not.
The virtual references, as their name implies, are in the form of dummies. Unlike several other references, the virtual references do not determine the object's lifecycle. If an object has only virtual references, it may be garbage collected at any time, as it would without any references.
Therefore, based on the above characteristics, the meaning of using weak references in the present disclosure is that the weak references do not interfere with the judgment of the garbage collection mechanism, and do not affect the garbage collection mechanism to collect the memory of the object. And when the condition that the memory of the object is to be recycled but not recycled is monitored, the object can be obtained through the weak reference, so that the memory of the object is saved, the recycling of the memory is avoided, and the object can be reused.
Further, all objects that are confirmed to be no longer used enter the free object pool to wait for reuse. Because strong references are used, the memory of objects in the free object pool is not reclaimed. However, since it has an upper storage limit, in practical applications, a software developer can set the upper storage limit of the free object pool according to practical requirements. Furthermore, the objects stored in the free object pool are time-limited, and if the predetermined time-limit threshold is exceeded, the objects are kicked out of the free object pool to wait for being recycled, so that in practical application, a software developer can set the time-limit threshold according to practical requirements.
When the method is applied to the present disclosure, the creation instruction may include an object type of a new object to be created, so before creating the new object, it may be detected whether a free object, which is the same as the object type and can be reused, exists in the second object pool (i.e., the free object pool), and if so, the free object may be obtained from the second object pool and may be used as a target object to be reused; if not, a target object of the object type may be created.
Step S102, generating a usable object based on the target object;
after the target object is obtained, the target object is not used immediately, but a usable object is generated based on the target object and then used as a new object to be created.
In a preferred embodiment of the present disclosure, the step of generating a usable object based on the target object includes:
packaging the target object to obtain a first packaged target object;
changing the reference type of the first target object from a strong reference to a weak reference results in a usable object.
In particular, wrapping the target object may be generating a wrapping class for the target object.
For example, a wrapper class User $ Decorate is generated for a code segment of a target object. The package class User $ decoate is inherited from the User and holds a reference of the User, in the User $ decoate, all calls to the original User attribute are actually called by the User, and the User $ decoate is similar to an empty shell.
It is particularly emphasized that User $ decoate duplicates the flattening method, which can achieve one "object rescue," i.e., prevent objects from being garbage reclaimed.
Further, when a virtual machine in JAVA retrieves an object, it will first detect whether the object implements the finalize method, if not, it will directly retrieve, if it does, it will first put it in a low priority queue, and then execute its finalize method, where it is the last time that the object can implement self-rescue. The limitation can be that this opportunity is only so, if the finesize method of an object is executed once by the virtual machine and then recovered again, it will be directly recovered, and there is no second opportunity for self-rescue.
Therefore, the packaging category has the significance that: the wrapper class implements the finalize method, so that this object has the opportunity to save itself. One subject cannot rescue twice after self-rescue and needs to be repackaged once to obtain the capacity of the next self-rescue.
Furthermore, since the target object is obtained from the second object pool, the target object has a strong reference, and therefore, after the target object is packaged, the reference type of the packaged target object needs to be changed from the strong reference to the weak reference, so as to obtain a usable object.
In a preferred embodiment of the present disclosure, the step of generating a usable object based on the target object includes:
packaging the target object to obtain a second packaged target object;
and setting the reference type of the second target object as a weak reference to obtain the usable object.
Specifically, if the target object is not obtained from the second object pool but newly created, the target object is directly packaged, and the specific packaging manner may be referred to as the above packaging manner, which is not described herein again.
Since the target object is newly created, the usable object is obtained by setting the reference type of the target object as a weak reference after the creation is completed.
Step S103, storing the usable object to a preset first object pool, and taking the usable object as a new object;
after the usable object is obtained, the usable object is cached in the first object pool, and then the usable object is returned to the application program as a new object, so that the object creation of the application program is completed.
And step S104, when a garbage collection event aiming at the new object is monitored, acquiring the new object from the first object pool, and storing the new object into a preset second object pool by adopting a preset second rule so as to be used as a target object when the new object is acquired by adopting the first rule.
Specifically, garbage collection refers to the collection of a discarded object and then the destruction of the memory of that object. In the present disclosure, it is possible to identify whether a reference chain exists between an object and a root object by a "root search algorithm", and if not, it is stated that the object is a recoverable object. The memory of the object can be recycled by virtual reference snooping and finish snooping.
Virtual reference listening: a virtual reference is used to hold an object, and when the object is about to be or has been reclaimed, the virtual reference is added to the queue, so that it can be monitored when the object is reclaimed.
Refining monitor: according to the foregoing, when garbage collection is performed on an object, the Finalize method of the object is executed, so that when the Finalize method is monitored, it can be monitored when the object is collected.
In a preferred embodiment of the present disclosure, the step of obtaining a new object from the first object pool and storing the new object to the second object pool by using a second rule, includes:
acquiring a new object from the first object pool, and changing the reference type of the new object from weak reference to strong reference to obtain a changed new object;
and storing the changed new object to the second object pool.
In order to prevent the situation that the object may have been recovered to receive the listening garbage recovery event or has not listened to the garbage recovery event at all, the present disclosure may use the above two listening modes simultaneously to improve the probability of the object being rescued.
When a new object is used by an application program, the new object is monitored to be recycled through any one of the two methods, the new object can be obtained from an 'in-use object pool', then an instance of the object is obtained through weak reference attempt of the object, if the obtaining is successful, the reference type of the new object is changed from weak reference to strong reference, the changed new object is obtained and cached in a 'free object pool', therefore, the new object which is used completely cannot be recycled, the new object is rescued, and the new object cached in the 'free object pool' can be used as a free object to wait for being reused.
The steps in the present disclosure for creating a new object are explained below with reference to fig. 2.
When an application program needs to create a new object, detecting whether a reusable target object exists in a free object pool, and if so, acquiring any reusable target object; if not, a new target object is created; and then packaging the target object to obtain a packaged target object, setting the reference type of the packaged target object as a weak reference to obtain a usable object, caching the usable object to a used object pool, returning the usable object to the application program, and enabling the application program to use the usable object.
In the embodiment of the disclosure, when a creation instruction for creating a new object is received, a target object is acquired by using a preset first rule, then a usable object is generated based on the target object, the usable object is stored in a preset first object pool and serves as the new object, when a garbage collection event for the new object is monitored, the new object is acquired from the first object pool and is stored in a preset second object pool by using a preset second rule, so that the new object serves as the target object when the new object is acquired by using the first rule. Therefore, in the running process of the application program, the created new object is stored in the first object pool and used, and when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool and stored in the second object pool, so that the new object can be reused as a target object when the new object is created next time, thereby realizing the reuse of the object, avoiding the situation that the object is frequently created to be destroyed in the running process of the application program, greatly reducing the garbage collection times and the thread pause times, increasing the running smoothness of the application program and improving the user experience. Meanwhile, for a software developer, the objects can be automatically reused, so that people do not need to pay attention to when the objects are discarded, and the labor cost and the time cost are reduced.
Further, through setting up the first object pool that is used for storing the usable object that has the weak reference, the second object pool that is used for storing the reusable object that has the strong reference, the packing of object and the mode of monitoring rubbish and retrieving the event, realized when detecting the rubbish retrieval to the weak reference object, automatically change the reference type of the weak reference object into the strong reference, thereby accomplish the rescue to the weak reference object, not only improved the multiplexing efficiency of object, also further reduced the number of times and the number of times that the thread pauses of rubbish retrieval, the smoothness of application program operation has been increased, user experience has been promoted.
Fig. 3 is a schematic structural diagram of an apparatus for processing an object according to another embodiment of the present disclosure, and as shown in fig. 3, the apparatus of this embodiment may include:
a receiving module 301, configured to receive a creation instruction for creating a new object;
an obtaining module 302, configured to obtain a target object by using a preset first rule;
a generation module 303 for generating a usable object based on the target object;
a storage module 304, configured to store the usable object to a preset first object pool, and use the usable object as a new object;
a monitoring module 305, configured to monitor a garbage collection event for a new object;
and the processing module 306 is configured to acquire a new object from the first object pool and store the new object to a preset second object pool by using a preset second rule, so that the new object is taken as a target object when the new object is acquired by using the first rule.
In a preferred embodiment of the present disclosure, the create instruction includes an object type of the new object;
the acquisition module comprises:
the detection submodule is used for detecting whether a reusable idle object with the same type as the object exists in the second object pool;
and the first extraction submodule is used for acquiring the idle object and taking the idle object as a target object.
In a preferred embodiment of the present disclosure, the obtaining module includes:
the detection submodule is also used for detecting whether a reusable idle object with the same type as the object exists in the second object pool;
and the creating submodule is used for creating a target object of the object type.
In a preferred embodiment of the present disclosure, a first object pool is used to store usable objects with weak references; the second object pool is used to store reusable objects with strong references.
In a preferred embodiment of the present disclosure, the generating module includes:
the packaging submodule is used for packaging the target object to obtain a first packaged target object;
and the first change submodule is used for changing the reference type of the first target object from strong reference to weak reference to obtain a usable object.
In a preferred embodiment of the present disclosure, the generating module includes:
the packaging submodule is used for packaging the target object to obtain a second packaged target object;
and the setting submodule is used for setting the reference type of the second target object as a weak reference to obtain the usable object.
In a preferred embodiment of the present disclosure, the processing module includes:
the second extraction submodule is used for acquiring a new object from the first object pool;
the second change submodule is used for changing the reference type of the new object from weak reference to strong reference to obtain a changed new object;
and the storage submodule is used for storing the changed new object to the second object pool.
In a preferred embodiment of the present disclosure, the manner of snooping includes virtual reference snooping and finalize snooping.
The object processing apparatus of this embodiment can execute the object processing methods shown in the first embodiment and the second embodiment of the present disclosure, and the implementation principles thereof are similar, and are not described herein again.
In the embodiment of the disclosure, when a creation instruction for creating a new object is received, a target object is acquired by using a preset first rule, then a usable object is generated based on the target object, the usable object is stored in a preset first object pool and serves as the new object, when a garbage collection event for the new object is monitored, the new object is acquired from the first object pool and is stored in a preset second object pool by using a preset second rule, so that the new object serves as the target object when the new object is acquired by using the first rule. Therefore, in the running process of the application program, the created new object is stored in the first object pool and used, and when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool and stored in the second object pool, so that the new object can be reused as a target object when the new object is created next time, thereby realizing the reuse of the object, avoiding the situation that the object is frequently created to be destroyed in the running process of the application program, greatly reducing the garbage collection times and the thread pause times, increasing the running smoothness of the application program and improving the user experience. Meanwhile, for a software developer, the objects can be automatically reused, so that people do not need to pay attention to when the objects are discarded, and the labor cost and the time cost are reduced.
Further, through setting up the first object pool that is used for storing the usable object that has the weak reference, the second object pool that is used for storing the reusable object that has the strong reference, the packing of object and the mode of monitoring rubbish and retrieving the event, realized when detecting the rubbish retrieval to the weak reference object, automatically change the reference type of the weak reference object into the strong reference, thereby accomplish the rescue to the weak reference object, not only improved the multiplexing efficiency of object, also further reduced the number of times and the number of times that the thread pauses of rubbish retrieval, the smoothness of application program operation has been increased, user experience has been promoted.
Referring now to FIG. 4, a block diagram of an electronic device 400 suitable for use in implementing embodiments of the present disclosure is shown. The electronic devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., car navigation terminals), and the like, and fixed terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 4 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
The electronic device includes: a memory and a processor, wherein the processor may be referred to as the processing device 401 hereinafter, and the memory may include at least one of a Read Only Memory (ROM)402, a Random Access Memory (RAM)403 and a storage device 408 hereinafter, which are specifically shown as follows: as shown in fig. 4, electronic device 400 may include a processing device (e.g., central processing unit, graphics processor, etc.) 401 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)402 or a program loaded from a storage device 408 into a Random Access Memory (RAM) 403. In the RAM403, various programs and data necessary for the operation of the electronic apparatus 400 are also stored. The processing device 401, the ROM 402, and the RAM403 are connected to each other via a bus 404. An input/output (I/O) interface 405 is also connected to bus 404.
Generally, the following devices may be connected to the I/O interface 405: input devices 406 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; an output device 407 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 408 including, for example, tape, hard disk, etc.; and a communication device 409. The communication means 409 may allow the electronic device 400 to communicate wirelessly or by wire with other devices to exchange data. While fig. 4 illustrates an electronic device 400 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication device 409, or from the storage device 408, or from the ROM 402. The computer program performs the above-described functions defined in the methods of the embodiments of the present disclosure when executed by the processing device 401.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperText transfer protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule; generating a usable object based on the target object; storing the usable object to a preset first object pool, and taking the usable object as a new object; when a garbage collection event aiming at a new object is monitored, the new object is obtained from the first object pool, and the new object is stored to the preset second object pool by adopting a preset second rule, so that the new object is taken as a target object when the new object is obtained by adopting the first rule.
Computer program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules or units described in the embodiments of the present disclosure may be implemented by software or hardware. Wherein the designation of a module or unit does not in some cases constitute a limitation of the unit itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, [ example one ] there is provided a method of processing an object, comprising:
when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule;
generating a usable object based on the target object;
storing the usable object to a preset first object pool, and taking the usable object as the new object;
when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool, and the new object is stored to a preset second object pool by adopting a preset second rule, so that the new object is taken as the target object when the new object is obtained by adopting the first rule.
Preferably, the creation instruction includes an object type of the new object;
the step of obtaining the target object by using the preset first rule includes:
detecting whether a reusable idle object with the same type as the object exists in the second object pool or not;
and if so, acquiring the idle object, and taking the idle object as the target object.
Preferably, the step of obtaining the target object by using a preset first rule includes:
detecting whether a reusable idle object with the same type as the object exists in the second object pool or not;
and if not, creating the target object of the object type.
Preferably, the first object pool is used to store usable objects with weak references; the second object pool is used for storing reusable objects with strong references.
Preferably, the step of generating a usable object based on the target object includes:
packaging the target object to obtain a first packaged target object;
and changing the reference type of the first target object from strong reference to weak reference to obtain the usable object.
Preferably, the step of generating a usable object based on the target object includes:
packaging the target object to obtain a second packaged target object;
and setting the reference type of the second target object as a weak reference to obtain the usable object.
Preferably, the step of acquiring the new object from the first object pool and storing the new object to a preset second object pool by using a preset second rule includes:
acquiring the new object from the first object pool, and changing the reference type of the new object from weak reference to strong reference to obtain a changed new object;
and storing the changed new object to the second object pool.
Preferably, the modes of the monitoring include virtual reference monitoring and finalize monitoring.
According to one or more embodiments of the present disclosure, [ example two ] there is provided the apparatus of example one, further comprising:
the receiving module is used for receiving a creating instruction for creating a new object;
the acquisition module is used for acquiring a target object by adopting a preset first rule;
a generation module for generating a usable object based on the target object;
the storage module is used for storing the usable object to a preset first object pool and taking the usable object as the new object;
the monitoring module is used for monitoring a garbage collection event aiming at the new object;
and the processing module is used for acquiring the new object from the first object pool and storing the new object to a preset second object pool by adopting a preset second rule so as to enable the new object to be taken as the target object when the new object is acquired by adopting the first rule.
Preferably, the creation instruction includes an object type of the new object;
the acquisition module includes:
the detection submodule is used for detecting whether a reusable idle object with the same type as the object exists in the second object pool or not;
and the first extraction submodule is used for acquiring the idle object and taking the idle object as the target object.
Preferably, the obtaining module includes:
the detection submodule is also used for detecting whether a reusable idle object with the same type as the object exists in the second object pool;
and the creating submodule is used for creating the target object of the object type.
Preferably, the first object pool is used to store usable objects with weak references; the second object pool is used for storing reusable objects with strong references.
Preferably, the generating module comprises:
the packaging submodule is used for packaging the target object to obtain a first packaged target object;
and the first change submodule is used for changing the reference type of the first target object from strong reference to weak reference to obtain the usable object.
Preferably, the generating module comprises:
the packaging submodule is used for packaging the target object to obtain a second packaged target object;
and the setting submodule is used for setting the reference type of the second target object as a weak reference to obtain the usable object.
Preferably, the processing module comprises:
a second extraction submodule, configured to obtain the new object from the first object pool;
the second change submodule is used for changing the reference type of the new object from weak reference to strong reference to obtain a changed new object;
and the storage submodule is used for storing the changed new object to the second object pool.
Preferably, the modes of the monitoring include virtual reference monitoring and finalize monitoring.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other embodiments in which any combination of the features described above or their equivalents does not depart from the spirit of the disclosure. For example, the above features and (but not limited to) the features disclosed in this disclosure having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (11)

1. A method of processing an object, comprising:
when a creation instruction for creating a new object is received, acquiring a target object by adopting a preset first rule;
generating a usable object based on the target object;
storing the usable object to a preset first object pool, and taking the usable object as the new object;
when a garbage collection event aiming at the new object is monitored, the new object is obtained from the first object pool, and the new object is stored to a preset second object pool by adopting a preset second rule, so that the new object is taken as the target object when the new object is obtained by adopting the first rule.
2. The method of processing an object according to claim 1, wherein the creation instruction includes an object type of the new object;
the step of obtaining the target object by using the preset first rule includes:
detecting whether a reusable idle object with the same type as the object exists in the second object pool or not;
and if so, acquiring the idle object, and taking the idle object as the target object.
3. The object processing method according to claim 1, wherein the step of obtaining the target object by using the preset first rule comprises:
detecting whether a reusable idle object with the same type as the object exists in the second object pool or not;
and if not, creating the target object of the object type.
4. The method of processing objects according to claim 1, wherein the first pool of objects is used to store consumable objects with weak references; the second object pool is used for storing reusable objects with strong references.
5. The method for processing the object according to claim 1, 2 or 4, wherein the step of generating the usable object based on the target object comprises:
packaging the target object to obtain a first packaged target object;
and changing the reference type of the first target object from strong reference to weak reference to obtain the usable object.
6. The method for processing the object according to claim 1, 3 or 4, wherein the step of generating the usable object based on the target object comprises:
packaging the target object to obtain a second packaged target object;
and setting the reference type of the second target object as a weak reference to obtain the usable object.
7. The method for processing the object according to claim 1 or 4, wherein the step of obtaining the new object from the first object pool and storing the new object to a second object pool by using a second rule includes:
acquiring the new object from the first object pool, and changing the reference type of the new object from weak reference to strong reference to obtain a changed new object;
and storing the changed new object to the second object pool.
8. The method of claim 1, wherein the listening comprises virtual reference listening and finalize listening.
9. An apparatus for processing an object, comprising:
the receiving module is used for receiving a creating instruction for creating a new object;
the acquisition module is used for acquiring a target object by adopting a preset first rule;
a generation module for generating a usable object based on the target object;
the storage module is used for storing the usable object to a preset first object pool and taking the usable object as the new object;
the monitoring module is used for monitoring a garbage collection event aiming at the new object;
and the processing module is used for acquiring the new object from the first object pool and storing the new object to a preset second object pool by adopting a preset second rule so as to enable the new object to be taken as the target object when the new object is acquired by adopting the first rule.
10. An electronic device, comprising:
a processor, a memory, and a bus;
the bus is used for connecting the processor and the memory;
the memory is used for storing operation instructions;
the processor is used for executing the processing method of the object in any one of the claims 1-8 by calling the operation instruction.
11. A computer-readable storage medium for storing computer instructions which, when executed on a computer, cause the computer to perform the method of processing an object of any of claims 1-8.
CN202010358488.0A 2020-04-29 2020-04-29 Object processing method and device, electronic equipment and computer readable storage medium Active CN111522645B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010358488.0A CN111522645B (en) 2020-04-29 2020-04-29 Object processing method and device, electronic equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010358488.0A CN111522645B (en) 2020-04-29 2020-04-29 Object processing method and device, electronic equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN111522645A true CN111522645A (en) 2020-08-11
CN111522645B CN111522645B (en) 2023-09-12

Family

ID=71905803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010358488.0A Active CN111522645B (en) 2020-04-29 2020-04-29 Object processing method and device, electronic equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN111522645B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463626A (en) * 2020-12-10 2021-03-09 网易(杭州)网络有限公司 Memory leak positioning method and device, computer equipment and storage medium
CN114546665A (en) * 2022-04-22 2022-05-27 恒生电子股份有限公司 Object processing method and system

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487563B1 (en) * 1999-03-23 2002-11-26 Koninklijke Philips Electronics N.V. Memory reclamation method
US20030220952A1 (en) * 2002-05-25 2003-11-27 International Business Machines Corporation Method and system for the garbage collection of shared data
US20070136402A1 (en) * 2005-11-30 2007-06-14 International Business Machines Corporation Automatic prediction of future out of memory exceptions in a garbage collected virtual machine
US20100114999A1 (en) * 2008-10-31 2010-05-06 International Business Machines Corporation Method and System to Space-Efficiently Track Memory Access of Object-Oriented Language in Presence of Garbage Collection
CN102713851A (en) * 2009-12-10 2012-10-03 国际商业机器公司 Logical data object reuse in a virtual server
US8935474B1 (en) * 2012-09-28 2015-01-13 Emc Corporation Policy based storage of object fragments in a multi-tiered storage system
CN107301095A (en) * 2017-06-14 2017-10-27 北京小度信息科技有限公司 System operation method and operating system
CN109298901A (en) * 2018-08-29 2019-02-01 百度在线网络技术(北京)有限公司 Object processing method, device, equipment, storage medium and vehicle
CN110471763A (en) * 2019-07-29 2019-11-19 平安科技(深圳)有限公司 Dispatching method, system, medium and electronic equipment based on shared object pond

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487563B1 (en) * 1999-03-23 2002-11-26 Koninklijke Philips Electronics N.V. Memory reclamation method
US20030220952A1 (en) * 2002-05-25 2003-11-27 International Business Machines Corporation Method and system for the garbage collection of shared data
US20070136402A1 (en) * 2005-11-30 2007-06-14 International Business Machines Corporation Automatic prediction of future out of memory exceptions in a garbage collected virtual machine
US20100114999A1 (en) * 2008-10-31 2010-05-06 International Business Machines Corporation Method and System to Space-Efficiently Track Memory Access of Object-Oriented Language in Presence of Garbage Collection
CN102713851A (en) * 2009-12-10 2012-10-03 国际商业机器公司 Logical data object reuse in a virtual server
US8935474B1 (en) * 2012-09-28 2015-01-13 Emc Corporation Policy based storage of object fragments in a multi-tiered storage system
CN107301095A (en) * 2017-06-14 2017-10-27 北京小度信息科技有限公司 System operation method and operating system
CN109298901A (en) * 2018-08-29 2019-02-01 百度在线网络技术(北京)有限公司 Object processing method, device, equipment, storage medium and vehicle
CN110471763A (en) * 2019-07-29 2019-11-19 平安科技(深圳)有限公司 Dispatching method, system, medium and electronic equipment based on shared object pond

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463626A (en) * 2020-12-10 2021-03-09 网易(杭州)网络有限公司 Memory leak positioning method and device, computer equipment and storage medium
CN112463626B (en) * 2020-12-10 2023-07-11 网易(杭州)网络有限公司 Memory leakage positioning method and device, computer equipment and storage medium
CN114546665A (en) * 2022-04-22 2022-05-27 恒生电子股份有限公司 Object processing method and system
CN114546665B (en) * 2022-04-22 2022-08-05 恒生电子股份有限公司 Object processing method and system

Also Published As

Publication number Publication date
CN111522645B (en) 2023-09-12

Similar Documents

Publication Publication Date Title
CN111274503B (en) Data processing method, device, electronic equipment and computer readable medium
CN111597065B (en) Method and device for collecting equipment information
CN111258736B (en) Information processing method and device and electronic equipment
CN111522645A (en) Object processing method and device, electronic equipment and computer-readable storage medium
CN113835992B (en) Memory leakage processing method and device, electronic equipment and computer storage medium
CN110554918B (en) Current limiting method, current limiting device, electronic equipment and computer readable storage medium
CN110633433B (en) Page caching method and device, electronic equipment and storage medium
CN111813666A (en) Memory leak positioning method, device, medium and electronic equipment
CN111258800A (en) Page processing method and device and electronic equipment
CN108762983B (en) Multimedia data recovery method and device
CN111273847B (en) Page processing method and device, electronic equipment and storage medium
CN111460211A (en) Audio information playing method and device and electronic equipment
CN111367720A (en) Data protection method and device, electronic equipment and computer readable storage medium
CN111240801A (en) Method, device, medium and electronic equipment for generating heap memory snapshot file
CN113391860A (en) Service request processing method and device, electronic equipment and computer storage medium
CN111414343A (en) Log writing method and device, electronic equipment and medium
CN109656659B (en) Behavior event processing method and device, electronic equipment and readable storage medium
CN113849686A (en) Video data acquisition method and device, electronic equipment and storage medium
CN111538721A (en) Account processing method and device, electronic equipment and computer readable storage medium
CN111399902A (en) Client source file processing method and device, readable medium and electronic equipment
CN110750242B (en) File deployment method, system, medium and electronic equipment
CN111562913B (en) Method, device and equipment for pre-creating view component and computer readable medium
CN111310483B (en) Translation method, translation device, electronic equipment and storage medium
CN111626787B (en) Resource issuing method, device, medium and equipment
CN113138883B (en) Message processing method and device, storage medium and electronic equipment

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
CB02 Change of applicant information

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: Tiktok vision (Beijing) Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant