CN109086124A - Method, apparatus, electronic equipment and the storage medium of adjustment time - Google Patents
Method, apparatus, electronic equipment and the storage medium of adjustment time Download PDFInfo
- Publication number
- CN109086124A CN109086124A CN201710443448.4A CN201710443448A CN109086124A CN 109086124 A CN109086124 A CN 109086124A CN 201710443448 A CN201710443448 A CN 201710443448A CN 109086124 A CN109086124 A CN 109086124A
- Authority
- CN
- China
- Prior art keywords
- time
- thread
- spin
- shared resource
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
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)
- Debugging And Monitoring (AREA)
Abstract
The embodiment of the invention provides a kind of method, apparatus of adjustment time, electronic equipment and storage mediums, are related to technical field of data processing, this method comprises: detecting the corresponding holding time of the subject thread when the subject thread in program occupies shared resource;According to the holding time, adjustment spin time, wherein the spin time, the application thread included the thread that application occupies the shared resource in described program for determining whether application thread needs to enter sleep state.The embodiment of the present invention is dynamically adjusted the spin time, uses the data access speed in the case of shared resource so as under the premise of guaranteeing program correctness, accelerate multithreading competition.
Description
Technical field
The present invention relates to technical field of data processing, method, a kind of adjustment time more particularly to a kind of adjustment time
Device, a kind of electronic equipment and a kind of storage medium.
Background technique
In multi-thread programming, data sharing is inevitable.Therefore, when multithreading carries out multiple programming,
The consistency of data sharing becomes matter of utmost importance in need of consideration.
For example, consistency and safety in order to guarantee data during multi-thread data accesses, JAVA language mention
It has supplied synchronous (synchronized) keyword to realize synchronization, that is, the keyword can be used to lock the critical of some object
Area.Specifically, Java Virtual Machine (Java Virtual Machine, JVM) guarantees different threads for this using lock mechanism
The exclusive reference for the critical zone that keyword identification comes out, i.e., any thread must be obtained first locked after could to access this critical
Area, access completes that lock must be discharged when exiting the critical zone, so as to the entrance of other threads.
When there are a series of thread A [1]~A [n] to have used some shared data module (abbreviation data block), a certain
When thread occupies the data block, other threads all have to enter into sleep state waiting and are waken up.If every secondary thread occupies
The data block time is shorter, and the data switching that will be frequent consumes a large amount of central processing units (Central Processing
Unit, CPU) resource, cause thread goodput to decline.
Summary of the invention
In view of the above problems, it proposes the embodiment of the present invention and overcomes the above problem or at least partly in order to provide one kind
A kind of method of the adjustment time to solve the above problems.
Correspondingly, the embodiment of the invention also provides a kind of device of adjustment time, a kind of electronic equipment and one kind to deposit
Storage media, to guarantee the implementation and application of the above method.
To solve the above-mentioned problems, the embodiment of the invention discloses a kind of methods of adjustment time, comprising:
When the subject thread in program occupies shared resource, the corresponding holding time of the subject thread is detected;
According to the holding time, adjustment spin time, wherein the spin time is for determining whether application thread needs
To enter sleep state, the application thread includes the thread that application occupies the shared resource in described program.
It is optionally, described according to the holding time, adjustment spin time, comprising:
Judge whether the holding time is more than that described program corresponds to preset spin time threshold;
If being more than, shorten the spin time in described program;Otherwise, extend the spin time in described program.
Optionally, it is described judge the holding time whether be more than described program correspond to preset spin time threshold it
Before, further includes:
Count switch threads corresponding switching time in described program;
According to the switching time, the spin time threshold is determined.
Optionally, before the subject thread occupancy shared resource, further includes:
When the thread application in program occupies shared resource, judge whether the shared resource is occupied;
When the shared resource does not have occupied, the thread is determined as the subject thread in described program, it is described
Subject thread is for occupying the shared resource;
When the shared resource is occupied, detect the thread whether the spin time that can be current in described program
It is interior to occupy the shared resource;
When the thread cannot occupy the shared resource within the current spin time, the thread enters sleep shape
State.
Optionally, when the subject thread when in program occupies shared resource, when detecting the corresponding occupancy of the thread
Between, comprising:
When the subject thread occupies the shared resource, corresponding first time is recorded;
The subject thread is dilute put the shared resource when, record corresponding second time;
According to the first time and second time, the holding time is determined.
The embodiment of the invention also discloses a kind of devices of adjustment time, comprising:
Holding time detection module, for detecting the score when the subject thread in program occupies shared resource
The corresponding holding time of journey;
Spin time regulating module, for according to the holding time, adjustment spin time, wherein the spin time
For determining whether application thread needs to enter sleep state, the application thread includes applying for that occupancy is described total in described program
Enjoy the thread of resource.
Optionally, the spin time regulating module, comprising:
Judging submodule, for judging whether the holding time is more than the corresponding spin time threshold of described program;
Adjusting submodule shortens in described program if being more than the spin time threshold for the holding time
It spins the time;Otherwise, extend the spin time in described program.
Optionally, the device of adjustment time further include:
Switching time statistical module, for counting the corresponding switching time of switch threads in described program;
Spin threshold determination module, for determining the spin time threshold according to the switching time.
Optionally, the device of adjustment time further include:
Resource occupation judgment module, for judging the shared money when the thread application in program occupies shared resource
Whether source is occupied;
Thread occupies resource module, for the thread being determined as described when the shared resource does not have occupied
Subject thread in program, the subject thread is for occupying the shared resource;
Threads spin judgment module, whether for when the shared resource is occupied, detecting the thread can be
The shared resource is occupied in the described program current spin time;
Thread sleep waits module, for that cannot occupy the shared money within the current spin time when the thread
Source, the thread enter sleep state.
Optionally, the holding time detection module, comprising:
Oneth the record sub module, for recording corresponding the when the subject thread occupies the shared resource
One time;
2nd the record sub module, for the subject thread is dilute put the shared resource when, record corresponding
Two times;
Holding time determines submodule, according to the first time and second time, determines the holding time.
It include memory and one or more than one the embodiment of the invention also discloses a kind of electronic equipment
Program, perhaps more than one program is stored in memory and is configured to by one or more than one processing for one of them
It includes the instruction for performing the following operation that device, which executes the one or more programs:
When the subject thread in program occupies shared resource, the corresponding holding time of the subject thread is detected;
According to the holding time, adjustment spin time, wherein the spin time is for determining whether application thread needs
To enter sleep state, the application thread includes the thread that application occupies the shared resource in described program.
The embodiment of the invention also discloses a kind of readable storage medium storing program for executing, optionally, when the instruction in the storage medium by
When the processor of electronic equipment executes, so that electronic equipment is able to carry out adjustment described in one or more in the embodiment of the present invention
The method of time.
The embodiment of the present invention includes following advantages:
Through the embodiment of the present invention, when thread in a program occupies shared resource, when can detecte the corresponding occupancy
Between, and the spin time can be dynamically adjusted, so as to add under the premise of guaranteeing program correctness according to the holding time
Fast multithreading competition uses the data access speed in the case of shared resource.
Detailed description of the invention
Fig. 1 is a kind of step flow chart of the embodiment of the method for adjustment time of the invention;
Fig. 2 is a kind of step flow chart of the method preferred embodiment of adjustment time of the invention;
Fig. 3 is the change curve of the spin threshold function table in an optional example of the invention;
Fig. 4 is the flow chart that multithreading accesses to shared resource in an example of the present invention;
Fig. 5 is a kind of structural block diagram of time adjusting device embodiment of the invention;
Fig. 6 is a kind of structural block diagram of electronic equipment for adjustment time shown according to an exemplary embodiment.
Specific embodiment
In order to make the foregoing objectives, features and advantages of the present invention clearer and more comprehensible, with reference to the accompanying drawing and specific real
Applying mode, the present invention is described in further detail.
Currently, the mechanism locked in Java Virtual Machine there are three kinds, comprising: be biased to lock, lightweight lock and heavyweight lock.Its
In, the implementation of heavyweight lock can call directly the mutual exclusion lock of operating system nucleus to lock critical zone;Lightweight lock can
To modify the synchronous regime of object, the degree of reentrancy of state and lock including locking by atomic operation;Being biased to lock can be in light weight
It is advanced optimized on the basis of grade lock, it is convenient to omit the atomic operation in reentrant procedure.When only one thread enters critical zone,
Lightweight lock can be used;When multiple threads compete critical area resource, heavyweight lock can be transferred to.
Specifically, when the competition of multiple threads is using critical resource, the mode that critical zone locks can in JVM
To be converted to heavyweight lock from lightweight lock, the implementation of bottom can be the mutual exclusion lock of call operation system kernel, use
The mode of process blocking synchronizes, and critical resource herein can be shared resource.For mutual exclusion lock, if a resource Z is
Through being occupied by thread A, thread B wants to apply for resource Z, can not just obtain lock, can only enter sleep state and thread A is waited to terminate simultaneously
Release lock.After thread A, which discharges, to be locked, operating system can wake up thread B and be switched to the scene that executes of thread B, and thread B is opened
Begin to execute, and obtains the lock of resource Z.One of the problem of process, is that operating system is waking up thread B and is being switched to holding for B
Row scene is a very time-consuming operation, needs to save the scene for the thread C being currently executing, such as saves each register
State, the value etc. of PC register, and need to restore the scene of previously stored thread B, such as need to read the PC in the scene B
The value of register could start execution thread B.
Obviously, it is synchronized using the mode of process blocking, the competition for occurring shared resource every time can all carry out thread and cut
It changes.If the execution time of thread is all shorter, the time is performed effectively compared to thread, it is online to have a large amount of time consumption
In the switching of journey, multithreading competition is reduced using the data access speed in the case of shared resource, affects the operation of program
Speed.Wherein, shared resource is alternatively referred to as shared data block.
One of the core concepts of the embodiments of the present invention is, by detection shared resource from occupying dilute time put, moves
The spin lock corresponding waiting time is adjusted, state to achieve the purpose that accelerate multi-thread data access speed.
It should be noted that spin lock can refer to realize protection shared resource and propose a kind of lock mechanism.For example, working as
Thread B attempt apply resource Z spin lock when, if finding, the spin lock is occupied by thread A, thread B can spin one section when
Between, i.e. thread B time that can spin accordingly according to spin lock spins.If thread A terminates simultaneously within the spin time
The spin lock of resource Z is discharged, then the available spin lock of thread B and starts to execute;If thread A within the spin time simultaneously
It is not over access shared resource, then thread B can enter sleep.
Referring to Fig.1, a kind of step flow chart of the embodiment of the method for adjustment time of the invention is shown, specifically can wrap
Include following steps:
Step 101, when the subject thread in program occupies shared resource, when detecting the corresponding occupancy of the subject thread
Between.
In the concrete realization, when thread in a program occupies shared resource, which can be determined as subject thread,
And the subject thread can be counted from occupying to dilute time difference for putting shared resource, when determining the corresponding occupancy of the subject thread
Between.The holding time can be used for characterizing the clock cycle that subject thread occupies shared resource.
It, can be by the way that read register be added at the time point that shared data block occupies and discharges as an example of the invention
Then the instruction of CP0 can calculate the clock cycle that the shared data block is occupied by thread by seeking the method for difference, that is, determine
The corresponding holding time of subject thread out.
It should be noted that register CP0 can be in central processing unit (Central Processing Unit, CPU)
For recording the register of time, a coprocessor (co-processor) such as can be, it can band in the coprocessor
There is the register Count with computing function, such as the Count can increase by 1 every the two systems clock cycle.
With microprocessor (the Microprocessor without interlocked piped of no inner interlocked pipelining-stage
Stages, MIPS) for, there are a register CP0 in CPU, can be posted by command M FC0 and command M TC0 realization this
The access of storage CP0.Wherein, command M FC0 can be used for reading data from register CP0;Command M TC0 can be used for count
According to storage into register CP0.Register CP0 can be internal clocking register, as CPU can be by the register every 1 bat
The value of CP0 adds one.
Step 102, according to the holding time, adjustment spin time, wherein the spin time is for determining application line
Whether journey needs to enter sleep state, and the application thread includes the thread that application occupies the shared resource in described program.
In the embodiment of the present invention, the thread that application can be occupied to shared resource is known as applying for thread.Spinning the time can be with
It such as can be the spin lock corresponding waiting time for the time threshold of thread spin-waiting in characterization program.
In the concrete realization, when the shared resource that thread application occupies has been occupied by other threads, which can be according to
The spin time spins, to wait occupancy shared resource, and can be during spin without efficient operation.
Through the embodiment of the present invention, when thread in a program occupies shared resource, when can detecte the corresponding occupancy
Between, and the spin time can be dynamically adjusted according to the holding time, it can accelerate more under the premise of guaranteeing program correctness
Thread competition uses the data access speed in the case of shared resource.
In order to which those skilled in the art are best understood from implementation column of the present invention, the embodiment of the present invention is carried out below in conjunction with example
Description.
In the concrete realization, different application programs can have the characteristics that different.Using the embodiment of the present invention, Java is virtual
The characteristics of machine can be according to concrete application program is adaptively analyzed and adjusts the spin lock corresponding waiting time, i.e., automatic to adjust
The section spin time, so as to accelerate the access speed to shared resource under the premise of not influencing program correctness.
In an optional example, Java Virtual Machine can by detection shared resource from it is occupied and release time,
The spin lock corresponding waiting time is analyzed and adjusts, adaptively to achieve the purpose that accelerate multi-thread data access speed.Tool
Body, if the shared resource in program persistently occupies long time by some thread every time, other threads spins are waited
The cost for occupying the shared resource switches bring cost far beyond thread, then can be dynamically by spin-waiting
Time threshold is turned down, and the time of spin-waiting is reduced, i.e. the reduction program corresponding spin time., whereas if being total in program
The resource cracking release of occupied thread every time is enjoyed, i.e. the corresponding holding time of thread is shorter, other threads spins wait
The income that can be obtained is higher than the income of thread switching, then the time threshold of spin-waiting can dynamically be turned up, and extends spin etc.
To time, i.e. increase program corresponding spin time.
Referring to Fig. 2, a kind of step flow chart of the method preferred embodiment of adjustment time of the invention is shown, specifically may be used
To include the following steps:
Step 201, when the thread application in program occupies shared resource, judge whether the shared resource is occupied
With.
Specifically, when in program thread application occupy shared resource when, it can be determined that the shared resource whether by
It occupies.When the shared resource does not have occupied, i.e., the described thread can occupy the shared resource, such as can be by the line
Journey is determined as the subject thread in program, then which executes step 202 for occupying the shared resource.Institute
State shared resource it is occupied when, can detecte whether the thread can occupy institute within the described program current spin time
State shared resource.When the thread cannot occupy the shared resource within the current spin time, the thread can enter
Sleep state.If the thread can occupy the shared resource within the current spin time, step 202 can be executed.
Step 202, when the subject thread in program occupies shared resource, when detecting the corresponding occupancy of the subject thread
Between.
In a preferred embodiment of the invention, step 202 may include following sub-step:
Sub-step 2011 records corresponding first time when the subject thread occupies the shared resource;
Sub-step 2012, the subject thread is dilute put the shared resource when, record corresponding second time;
Sub-step 2013 determines the holding time according to the first time and second time.
For example, can read the value of register CP0 when subject thread occupies shared resource and be recorded as first time t1;
When the subject thread is dilute puts shared resource, the value of CP0 register can be read again and can recorde as the second time t2;From
And the time △ that the subject thread occupies shared resource can be obtained by the difference of the second time t2 and first time t1 of calculating
T, that is, determine the corresponding holding time △ t of the subject thread, and calculation formula can be with are as follows: △ t=t2-t1.
Step 203, according to the holding time, adjustment spin time.
In a preferred embodiment of the invention, it according to the holding time, the adjustment spin time, specifically can wrap
It includes: judging whether the holding time is more than that described program corresponds to preset spin time threshold;If being more than, shorten in program
The spin time;Otherwise, extend the spin time in described program.
In the embodiment of the present invention, can be according to program the characteristics of, which is set and corresponds to preset spin time threshold, and
The spin time threshold is determined for whether spin performance is lower than the performance for being directly entered thread block waiting.For example, can
Whether to be more than preset spin time threshold by detection holding time, to dynamically adjust spin time parameter, and can be with
The Cheng Zixuan time is determined based on spin time parameter adjusted.Specifically, if the corresponding holding time of thread is more than the spin
Time threshold can then determine that spin performance is lower than the performance for being directly entered thread block waiting, and can be by dynamically increasing
Spin time parameter, reduces the program corresponding spin time, uses the data in the case of shared resource to accelerate multithreading competition
Access speed.If the corresponding holding time of thread be lower than the spin time threshold, can determine spin performance be higher than directly into
Enter the performance of thread block waiting, and the program corresponding spin time can be increased by dynamically reducing spin time parameter, with
Achieve the purpose that threads spin, and then thread goodput can be improved while accelerating data access speed.
In the concrete realization, thread can be occupied to the clock cycle of shared resource and the clock cycle of thread switching carries out
Compare, so as to adaptively analyze and adjust the spin time.Therefore, in a preferred embodiment of the invention, described
Judge whether the holding time is more than before described program corresponds to preset spin time threshold, can also include: statistics institute
State the corresponding switching time of switch threads in program;According to the switching time, the spin time threshold is determined.Wherein, institute
The spin time threshold can be no more than by stating the spin time.
In the embodiment of the present invention, switching time can be used for characterizing the time needed for CPU does a thread switching.It is specific and
Speech, switching time T needed for a thread switching can be done based on CPU is come the corresponding spin time threshold of setting program, such as in advance
If spin time threshold can be the integral multiple of switching time T.For example, preset spin time threshold and program can be based on
Corresponding relationship between the corresponding holding time of middle thread, carrys out the corresponding spin threshold function table of setting program.It should be noted that
Spin threshold function table can be according to distinct program the characteristics of and/or different demands are configured, the embodiment of the present invention to this not
It is restricted.
Referring to Fig. 3, the change curve of the spin threshold function table in an optional example of the invention is shown.
In an optional example, preset spin time threshold holding time corresponding with thread in program can be based on
Between corresponding relationship, determine spin threshold function table y=F (x);Wherein, y can be used to indicate that the spin in the embodiment of the present invention
Time;X can be used to indicate that the spin time parameter in the embodiment of the present invention.It, can be with based on the spin threshold function table y=F (x)
According to spin time parameter x adjusted, corresponding spin time y is determined.For example, the cost when spin-waiting has exceeded thread
When the cost of switching, it can dynamically increase the value of spin time parameter x, while the value for the time y that spins can accordingly decrease;Instead
It, spin time parameter x reduces, and the value of spin time y can be increase accordingly.
It should be noted that spin time parameter x can be variable, whether the value of the variable can be in spin with thread
Interior release shared resource is related.The present invention is implemented can be by judging that can thread discharge shared money within the preset 2T time
Source, to change the value of spin time parameter x, so as to indirectly control the time span that spins next time.Control to the spin time
System, can be used the control of linear change, the control of nonlinear change also can be used, can be carried out according to specific procedure characteristic
Determine, the embodiment of the present invention to this with no restriction.
As shown in figure 3, spin threshold function table y=F (x) can have following characteristics: monotone decreasing, domain can be certain
In range and the codomain of the function can be data interval [0,2T].If the corresponding spin time y of program is done more than CPU
The time of two secondary threads switching, i.e. y > 2T, the then performance that spins are lower than the performance for being directly entered thread block waiting, i.e. spin-waiting
Cost have exceeded thread switching cost.
Specifically, spin time parameter x can be the independent variable for controlling spin time y variation, such as spin the time
The initial value of parameter x can be 0, and spin time y at this time can be T, and spin time y can with the variation of spin time parameter x
For linear change.If the holding time detected every time is both greater than the time 2T of two secondary threads switching, spin time parameter x
It can add one, reduce spin lock and spin accordingly time y;When the time parameter x that spins is greater than certain value, spin lock can be with
It closes., whereas if the holding time detected every time is both less than the time 2T of two secondary threads switching, then spin time parameter x
It can subtract one, increase spin lock and spin accordingly time y;When the time parameter x that spins is less than some value, spin the time
Y can be maximum value 2T, i.e. spin time y is no more than preset spin time threshold 2T.
It should be noted that when the value of the corresponding holding time △ t of most threads is all very big, and there are several lines
In the case where the value very little of the corresponding holding time △ t of journey, directly use the corresponding holding time △ t of thread as spin threshold value
Argument of function uses y- △ t function as spin threshold function table, may result in spin time y and frequently change.Cause
This, in order to reduce influence caused by special circumstances, this example does not use directly the corresponding holding time △ t of thread as spin
The independent variable of threshold function table.In addition, this example can also change spin by the domain for the threshold value control function that spins to control
Learning cost needed for time y.
Referring to Fig. 4, the flow chart that multithreading accesses to shared resource in an example of the present invention is shown, it is specific to wrap
Include following steps:
Step 4.1, when thread application shared resource, judge whether the shared resource is occupied.
In this example, as a certain thread application shared resource Z, such as in thread B application resource Z, judge that this is shared
Whether resource Z is occupied.If shared resource Z does not have occupied, 4.2 are entered step;If shared resource Z is occupied,
Then the thread application occupies shared resource Z failure, 4.8 is entered step, as thread A has occupied shared resource Z, the i.e. Shen thread B
Shared resource Z failure please be occupy, as shown in Figure 4.
Step 4.2, subject thread occupies the shared resource, reads the value of register CP0 and is recorded as first time t1.
Step 4.3, when subject thread discharges shared resource, the value of register CP0 can be read again and be recorded as the
Two time t2.
Step 4.3, the corresponding holding time △ t of computational threads.
For example, when thread A occupies shared resource Z, the subject thread that thread A can be determined as in program, and
The value of register CP0 can be read and be recorded as first time t1;When thread A discharges shared resource Z, deposit can be read again
The value of device CP0 is simultaneously recorded as the second time t2;It is thus possible to which computational threads A is occupied according to first time t1 and the second time t2
The time △ t of shared resource Z, calculation formula can be with are as follows: △ t=t2-t1.
Step 4.5, judge whether holding time △ t is greater than two secondary thread switching time 2T.
In this example, it can be dynamically adjusted by judging the size of holding time △ and two secondary thread switching time 2T
Spin time parameter x;If △ t > 2T, x++;Otherwise x--.
Step 4.6, according to spin threshold function table y=F (x) and spin time parameter x adjusted, spin time y is calculated.
Specifically, can be according to spin threshold function table y=F (x) and x value adjusted, setting spin time y, it can
When changing the corresponding spin time y of program, and can judge spin time y after change as the spin of threads spin next time
It is long;It is then possible to whether there is thread sleep in determining program, the shared resource Z is occupied to wait.
Step 4.7, shared resource is occupied if there is sleep thread waits, then can wakes up the sleep thread;If no
Thread of sleeping, which waits, occupies shared resource, then can terminate.
In this example, sleep thread can be used for characterizing into dormant thread.For example, when thread B enters sleep
After state, thread B can be used as sleep thread;And it so that thread B exits sleep state, and can be moved back by waking up thread B
The thread B after sleep state can occupy shared resource, i.e., the subject thread being determined as thread B in program out;And in thread
B is dilute when putting shared resource Z, can calculate the corresponding holding time of thread B.
Step 4.8, thread spins in spin time y.If thread can occupy shared money in spin time y
Source can then enter step 4.2;Otherwise, 4.9 can be entered step.
Step 4.9, thread enters sleep state, to wait occupancy shared resource.
For example, entering in thread B from supination, if can get shared resource during spin, i.e. thread B is occupied altogether
Enjoy resource, then can thread B is dilute put shared resource when, determine the corresponding holding time of thread B;If thread B cannot spin
During get shared resource, then thread B enters sleep state.
To sum up, the embodiment of the present invention can be under the premise of guaranteeing application program correctness, according to different application
Feature can be spinned the time with dynamic regulation, accelerate multithreading to the access speed of shared resource, so as to be promoted such as
The net synchronization capability of the softwares such as Java Virtual Machine.For example, can effectively provide the property of Java Virtual Machine using the embodiment of the present invention
Can, such as the execution performance of multi-thread concurrent program.
In addition, the embodiment of the present invention has certain applicability for the software for providing synchronization mechanism, it is not limited solely to
Java Virtual Machine has general applicability.
It should be noted that for simple description, therefore, it is stated as a series of action groups for embodiment of the method
It closes, but those skilled in the art should understand that, embodiment of that present invention are not limited by the describe sequence of actions, because according to
According to the embodiment of the present invention, some steps may be performed in other sequences or simultaneously.Secondly, those skilled in the art also should
Know, the embodiments described in the specification are all preferred embodiments, and the related movement not necessarily present invention is implemented
Necessary to example.
Referring to Fig. 5, a kind of structural block diagram of the Installation practice of adjustment time of the invention is shown, can specifically include
Following module:
Holding time detection module 501, for detecting the target when the subject thread in program occupies shared resource
The corresponding holding time of thread;
Spin time regulating module 502, for according to the holding time, adjustment spin time, wherein when the spin
Between for determine application thread whether need enter sleep state, the apply thread include in described program application occupancy described in
The thread of shared resource.
In an alternate embodiment of the present invention where, the spin time regulating module 502, comprising:
Judging submodule, for judging whether the holding time is more than the corresponding spin time threshold of described program;
Adjusting submodule shortens in described program if being more than the spin time threshold for the holding time
It spins the time;Otherwise, extend the spin time in described program.
In an alternate embodiment of the present invention where, the device of the adjustment time can also include:
Switching time statistical module, for counting the corresponding switching time of switch threads in described program;
Spin threshold determination module, for determining the spin time threshold according to the switching time.
In an alternate embodiment of the present invention where, the device of the adjustment time can also include:
Resource occupation judgment module, for judging the shared money when the thread application in program occupies shared resource
Whether source is occupied;
Thread occupies resource module, for the thread being determined as described when the shared resource does not have occupied
Subject thread in program, the subject thread is for occupying the shared resource;
Threads spin judgment module, whether for when the shared resource is occupied, detecting the thread can be
The shared resource is occupied in the described program current spin time;
Thread sleep waits module, for that cannot occupy the shared money within the current spin time when the thread
Source, the thread enter sleep state.
In an alternate embodiment of the present invention where, the holding time detection module, comprising:
Oneth the record sub module, for recording corresponding the when the subject thread occupies the shared resource
One time;
2nd the record sub module, for the subject thread is dilute put the shared resource when, record corresponding
Two times;
Holding time determines submodule, according to the first time and second time, determines the holding time.
For device embodiment, since it is basically similar to the method embodiment, related so being described relatively simple
Place illustrates referring to the part of embodiment of the method.
Fig. 6 is a kind of structural block diagram of electronic equipment 600 for adjustment time shown according to an exemplary embodiment.
For example, electronic equipment 600 can be mobile phone, computer, digital broadcasting terminal, messaging device, game console put down
Panel device, Medical Devices, body-building equipment, personal digital assistant etc..
Referring to Fig. 6, electronic equipment 600 may include following one or more components: processing component 602, memory 604,
Power supply module 606, multimedia component 608, audio component 610, the interface 612 of input/output (I/O), sensor module 614,
And communication component 616.
The integrated operation of the usual controlling electronic devices 600 of processing component 602, such as with display, call, data are logical
Letter, camera operation and record operate associated operation.Processing component 602 may include one or more processors 620 to hold
Row instruction, to perform all or part of the steps of the methods described above.In addition, processing component 602 may include one or more moulds
Block, convenient for the interaction between processing component 602 and other assemblies.For example, processing component 602 may include multi-media module, with
Facilitate the interaction between multimedia component 608 and processing component 602.
Memory 604 is configured as storing various types of data to support the operation in equipment 600.These data are shown
Example includes the instruction of any application or method for operating on electronic equipment 600, contact data, telephone directory number
According to, message, picture, video etc..Memory 604 can by any kind of volatibility or non-volatile memory device or they
Combination realize, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM) is erasable
Programmable read only memory (EPROM), programmable read only memory (PROM), read-only memory (ROM), magnetic memory, quick flashing
Memory, disk or CD.
Power supply module 606 provides electric power for the various assemblies of electronic equipment 600.Power supply module 606 may include power supply pipe
Reason system, one or more power supplys and other with for electronic equipment 600 generate, manage, and distribute the associated component of electric power.
Multimedia component 608 includes the screen of one output interface of offer between the electronic equipment 600 and user.
In some embodiments, screen may include liquid crystal display (LCD) and touch panel (TP).If screen includes touch surface
Plate, screen may be implemented as touch screen, to receive input signal from the user.Touch panel includes one or more touches
Sensor is to sense the gesture on touch, slide, and touch panel.The touch sensor can not only sense touch or sliding
The boundary of movement, but also detect duration and pressure associated with the touch or slide operation.In some embodiments,
Multimedia component 608 includes a front camera and/or rear camera.When equipment 600 is in operation mode, as shot mould
When formula or video mode, front camera and/or rear camera can receive external multi-medium data.Each preposition camera shooting
Head and rear camera can be a fixed optical lens system or have focusing and optical zoom capabilities.
Audio component 610 is configured as output and/or input audio signal.For example, audio component 610 includes a Mike
Wind (MIC), when electronic equipment 600 is in operation mode, when such as call mode, recording mode, and voice recognition mode, microphone
It is configured as receiving external audio signal.The received audio signal can be further stored in memory 604 or via logical
Believe that component 616 is sent.In some embodiments, audio component 610 further includes a loudspeaker, is used for output audio signal.
I/O interface 612 provides interface between processing component 602 and peripheral interface module, and above-mentioned peripheral interface module can
To be keyboard, click wheel, button etc..These buttons may include, but are not limited to: home button, volume button, start button and lock
Determine button.
Sensor module 614 includes one or more sensors, for providing the state of various aspects for electronic equipment 600
Assessment.For example, sensor module 614 can detecte the state that opens/closes of equipment 600, the relative positioning of component, such as institute
The display and keypad that component is electronic equipment 600 are stated, sensor module 614 can also detect electronic equipment 600 or electronics
The position change of 600 1 components of equipment, the existence or non-existence that user contacts with electronic equipment 600,600 orientation of electronic equipment
Or the temperature change of acceleration/deceleration and electronic equipment 600.Sensor module 614 may include proximity sensor, be configured to
It detects the presence of nearby objects without any physical contact.Sensor module 614 can also include optical sensor, such as
CMOS or ccd image sensor, for being used in imaging applications.In some embodiments, which can be with
Including acceleration transducer, gyro sensor, Magnetic Sensor, pressure sensor or temperature sensor.
Communication component 616 is configured to facilitate the communication of wired or wireless way between electronic equipment 600 and other equipment.
Electronic equipment 600 can access the wireless network based on communication standard, such as WiFi, 2G or 3G or their combination.Show at one
In example property embodiment, communication component 616 receives broadcast singal or broadcast from external broadcasting management system via broadcast channel
Relevant information.In one exemplary embodiment, the communication component 616 further includes near-field communication (NFC) module, short to promote
Cheng Tongxin.For example, radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra wide band can be based in NFC module
(UWB) technology, bluetooth (BT) technology and other technologies are realized.
In the exemplary embodiment, electronic equipment 600 can be by one or more application specific integrated circuit (ASIC), number
Word signal processor (DSP), digital signal processing appts (DSPD), programmable logic device (PLD), field programmable gate array
(FPGA), controller, microcontroller, microprocessor or other electronic components are realized, for executing the above method.
In the exemplary embodiment, a kind of non-transitorycomputer readable storage medium including instruction, example are additionally provided
It such as include the memory 604 of instruction, above-metioned instruction can be executed by the processor 620 of electronic equipment 600 to complete the above method.Example
Such as, the non-transitorycomputer readable storage medium can be ROM, random access memory (RAM), CD-ROM, tape, soft
Disk and optical data storage devices etc..
A kind of non-transitorycomputer readable storage medium, when the instruction in the storage medium is by the processing of electronic equipment
When device executes, so that a kind of method that electronic equipment is able to carry out adjustment time, which comprises when the score in program
When Cheng Zhanyong shared resource, the corresponding holding time of the subject thread is detected;According to the holding time, when adjustment is spinned
Between, wherein the spin time, the application thread included described for determining whether application thread needs to enter sleep state
Application occupies the thread of the shared resource in program.
Optionally, described according to the holding time, adjustment spin time, comprising: judge whether the holding time surpasses
It crosses described program and corresponds to preset spin time threshold;If being more than, shorten the spin time in described program;Otherwise, extend
The spin time in described program.
Optionally, it is described judge the holding time whether be more than described program correspond to preset spin time threshold it
Before, further includes: switch threads corresponding switching time in statistics described program;According to the switching time, the spin is determined
Time threshold.
Optionally, before the subject thread occupancy shared resource, further includes: shared when the thread application in program occupies
When resource, judge whether the shared resource is occupied;When the shared resource does not have occupied, the thread is determined
For the subject thread in described program, the subject thread is for occupying the shared resource;It is occupied in the shared resource
Used time, detect whether the thread can occupy the shared resource within the described program current spin time;When the line
Cheng Buneng occupies the shared resource within the current spin time, and the thread enters sleep state.
Optionally, when the subject thread when in program occupies shared resource, when detecting the corresponding occupancy of the thread
Between, comprising: when the subject thread occupies the shared resource, record corresponding first time;It is dilute in the subject thread
When putting the shared resource, corresponding second time is recorded;According to the first time and second time, accounted for described in determination
Use the time.
All the embodiments in this specification are described in a progressive manner, the highlights of each of the examples are with
The difference of other embodiments, the same or similar parts between the embodiments can be referred to each other.
It should be understood by those skilled in the art that, the embodiment of the embodiment of the present invention can provide as method, apparatus or calculate
Machine program product.Therefore, the embodiment of the present invention can be used complete hardware embodiment, complete software embodiment or combine software and
The form of the embodiment of hardware aspect.Moreover, the embodiment of the present invention can be used one or more wherein include computer can
With in the computer-usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) of program code
The form of the computer program product of implementation.
The embodiment of the present invention be referring to according to the method for the embodiment of the present invention, terminal device (system) and computer program
The flowchart and/or the block diagram of product describes.It should be understood that flowchart and/or the block diagram can be realized by computer program instructions
In each flow and/or block and flowchart and/or the block diagram in process and/or box combination.It can provide these
Computer program instructions are set to general purpose computer, special purpose computer, Embedded Processor or other programmable data processing terminals
Standby processor is to generate a machine, so that being held by the processor of computer or other programmable data processing terminal devices
Capable instruction generates for realizing in one or more flows of the flowchart and/or one or more blocks of the block diagram
The device of specified function.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing terminal devices
In the computer-readable memory to work in a predictive manner, so that instruction stored in the computer readable memory generates packet
The manufacture of command device is included, which realizes in one side of one or more flows of the flowchart and/or block diagram
The function of being specified in frame or multiple boxes.
These computer program instructions can also be loaded into computer or other programmable data processing terminal devices, so that
Series of operation steps are executed on computer or other programmable terminal equipments to generate computer implemented processing, thus
The instruction executed on computer or other programmable terminal equipments is provided for realizing in one or more flows of the flowchart
And/or in one or more blocks of the block diagram specify function the step of.
Although the preferred embodiment of the embodiment of the present invention has been described, once a person skilled in the art knows bases
This creative concept, then additional changes and modifications can be made to these embodiments.So the following claims are intended to be interpreted as
Including preferred embodiment and fall into all change and modification of range of embodiment of the invention.
Finally, it is to be noted that, herein, relational terms such as first and second and the like be used merely to by
One entity or operation are distinguished with another entity or operation, without necessarily requiring or implying these entities or operation
Between there are any actual relationship or orders.Moreover, the terms "include", "comprise" or its any other variant meaning
Covering non-exclusive inclusion, so that process, method, article or terminal device including a series of elements not only wrap
Those elements are included, but also including other elements that are not explicitly listed, or further includes for this process, method, article
Or the element that terminal device is intrinsic.In the absence of more restrictions, being wanted by what sentence "including a ..." limited
Element, it is not excluded that there is also other identical elements in process, method, article or the terminal device for including the element.
Above to a kind of method and apparatus of adjustment time provided by the present invention, a kind of electronic equipment and a kind of storage
Medium is described in detail, and used herein a specific example illustrates the principle and implementation of the invention, with
The explanation of upper embodiment is merely used to help understand method and its core concept of the invention;Meanwhile for the general of this field
Technical staff, according to the thought of the present invention, there will be changes in the specific implementation manner and application range, in conclusion
The contents of this specification are not to be construed as limiting the invention.
Claims (12)
1. a kind of method of adjustment time characterized by comprising
When the subject thread in program occupies shared resource, the corresponding holding time of the subject thread is detected;
According to the holding time, the adjustment spin time, wherein the spin time for determine apply thread whether need into
Enter sleep state, the application thread includes the thread that application occupies the shared resource in described program.
2. the method according to claim 1, wherein described according to the holding time, adjustment spin time, packet
It includes:
Judge whether the holding time is more than that described program corresponds to preset spin time threshold;
If being more than, shorten the spin time in described program;Otherwise, extend the spin time in described program.
3. according to the method described in claim 2, it is characterized in that, described judge whether the holding time is more than described program
Before corresponding preset spin time threshold, further includes:
Count switch threads corresponding switching time in described program;
According to the switching time, the spin time threshold is determined.
4. method according to any one of claims 1 to 3, which is characterized in that before the subject thread occupies shared resource,
Further include:
When the thread application in program occupies shared resource, judge whether the shared resource is occupied;
When the shared resource does not have occupied, the thread is determined as the subject thread in described program, the target
Thread is for occupying the shared resource;
When the shared resource is occupied, detect whether the thread can account within the described program current spin time
With the shared resource;
When the thread cannot occupy the shared resource within the current spin time, the thread enters sleep state.
5. method according to any one of claims 1 to 3, which is characterized in that the subject thread when in program occupies altogether
When enjoying resource, the corresponding holding time of the subject thread is detected, comprising:
When the subject thread occupies the shared resource, corresponding first time is recorded;
The subject thread is dilute put the shared resource when, record corresponding second time;
According to the first time and second time, the holding time is determined.
6. a kind of device of adjustment time characterized by comprising
Holding time detection module, for detecting the subject thread pair when the subject thread in program occupies shared resource
The holding time answered;
Spin time regulating module, for according to the holding time, adjustment spin time, wherein the spin time is used for
Determine whether application thread needs to enter sleep state, the application thread includes the application occupancy shared money in described program
The thread in source.
7. device according to claim 6, which is characterized in that the spin time regulating module, comprising:
Judging submodule, for judging whether the holding time is more than the corresponding spin time threshold of described program;
Adjusting submodule shortens the spin in described program if being more than the spin time threshold for the holding time
Time;Otherwise, extend the spin time in described program.
8. device according to claim 7, which is characterized in that further include:
Switching time statistical module, for counting the corresponding switching time of switch threads in described program;
Spin threshold determination module, for determining the spin time threshold according to the switching time.
9. according to any device of claim 6 to 8, which is characterized in that further include:
Resource occupation judgment module, for judging that the shared resource is when the thread application in program occupies shared resource
It is no occupied;
Thread occupies resource module, for when the shared resource does not have occupied, the thread to be determined as described program
In subject thread, the subject thread is for occupying the shared resource;
Threads spin judgment module, for whether when the shared resource is occupied, detecting the thread can be described
The shared resource is occupied in the program current spin time;
Thread sleep waits module, for that cannot occupy the shared resource, institute within the current spin time when the thread
It states thread and enters sleep state.
10. according to any device of claim 6 to 8, which is characterized in that the holding time detection module, comprising:
Oneth the record sub module is used for when the subject thread occupies the shared resource, when recording corresponding first
Between;
2nd the record sub module, for the subject thread is dilute put the shared resource when, when recording corresponding second
Between;
Holding time determines submodule, according to the first time and second time, determines the holding time.
11. a kind of electronic equipment, which is characterized in that include memory and one or more than one program, wherein one
A perhaps more than one program is stored in memory and is configured to execute described one by one or more than one processor
A or more than one program includes the instruction for performing the following operation:
When the subject thread in program occupies shared resource, the corresponding holding time of the subject thread is detected;
According to the holding time, the adjustment spin time, wherein the spin time for determine apply thread whether need into
Enter sleep state, the application thread includes the thread that application occupies the shared resource in described program.
12. a kind of readable storage medium storing program for executing, which is characterized in that when the instruction in the storage medium is held by the processor of electronic equipment
When row, so that the method that electronic equipment is able to carry out the adjustment time as described in one or more in claim to a method 1-5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710443448.4A CN109086124B (en) | 2017-06-13 | 2017-06-13 | Method and device for adjusting time, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710443448.4A CN109086124B (en) | 2017-06-13 | 2017-06-13 | Method and device for adjusting time, electronic equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109086124A true CN109086124A (en) | 2018-12-25 |
CN109086124B CN109086124B (en) | 2021-08-20 |
Family
ID=64838701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710443448.4A Active CN109086124B (en) | 2017-06-13 | 2017-06-13 | Method and device for adjusting time, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109086124B (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110557398A (en) * | 2019-09-12 | 2019-12-10 | 金蝶软件(中国)有限公司 | Service request control method, device, system, computer equipment and storage medium |
CN113676881A (en) * | 2021-08-06 | 2021-11-19 | Oppo广东移动通信有限公司 | Device control method, device, electronic device and storage medium |
CN114675979A (en) * | 2022-03-25 | 2022-06-28 | 阿波罗智能技术(北京)有限公司 | Multitask concurrent processing method and device, electronic equipment and automatic driving vehicle |
US11379456B2 (en) * | 2020-10-01 | 2022-07-05 | Oracle International Corporation | Efficient adjustment of spin-locking parameter values |
US11868261B2 (en) | 2021-07-20 | 2024-01-09 | Oracle International Corporation | Prediction of buffer pool size for transaction processing workloads |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601477A (en) * | 2003-09-25 | 2005-03-30 | 国际商业机器公司 | Method and system for autonomically adaptive mutexes |
US20090199030A1 (en) * | 2008-02-01 | 2009-08-06 | Arimilli Ravi K | Hardware Wake-and-Go Mechanism for a Data Processing System |
CN102566979A (en) * | 2011-12-02 | 2012-07-11 | 华为技术有限公司 | Method, device and multi-core processor system for realizing self-adaptive lock |
CN105393212A (en) * | 2013-08-14 | 2016-03-09 | 国际商业机器公司 | Efficient task scheduling using locking mechanism |
CN106462395A (en) * | 2014-05-05 | 2017-02-22 | 谷歌公司 | Thread waiting in a multithreaded processor architecture |
-
2017
- 2017-06-13 CN CN201710443448.4A patent/CN109086124B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601477A (en) * | 2003-09-25 | 2005-03-30 | 国际商业机器公司 | Method and system for autonomically adaptive mutexes |
US20090199030A1 (en) * | 2008-02-01 | 2009-08-06 | Arimilli Ravi K | Hardware Wake-and-Go Mechanism for a Data Processing System |
CN102566979A (en) * | 2011-12-02 | 2012-07-11 | 华为技术有限公司 | Method, device and multi-core processor system for realizing self-adaptive lock |
CN105393212A (en) * | 2013-08-14 | 2016-03-09 | 国际商业机器公司 | Efficient task scheduling using locking mechanism |
CN106462395A (en) * | 2014-05-05 | 2017-02-22 | 谷歌公司 | Thread waiting in a multithreaded processor architecture |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110557398A (en) * | 2019-09-12 | 2019-12-10 | 金蝶软件(中国)有限公司 | Service request control method, device, system, computer equipment and storage medium |
CN110557398B (en) * | 2019-09-12 | 2022-05-17 | 金蝶软件(中国)有限公司 | Service request control method, device, system, computer equipment and storage medium |
US11379456B2 (en) * | 2020-10-01 | 2022-07-05 | Oracle International Corporation | Efficient adjustment of spin-locking parameter values |
US11868261B2 (en) | 2021-07-20 | 2024-01-09 | Oracle International Corporation | Prediction of buffer pool size for transaction processing workloads |
CN113676881A (en) * | 2021-08-06 | 2021-11-19 | Oppo广东移动通信有限公司 | Device control method, device, electronic device and storage medium |
CN113676881B (en) * | 2021-08-06 | 2024-05-07 | Oppo广东移动通信有限公司 | Equipment control method, device, electronic equipment and storage medium |
CN114675979A (en) * | 2022-03-25 | 2022-06-28 | 阿波罗智能技术(北京)有限公司 | Multitask concurrent processing method and device, electronic equipment and automatic driving vehicle |
Also Published As
Publication number | Publication date |
---|---|
CN109086124B (en) | 2021-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109086124A (en) | Method, apparatus, electronic equipment and the storage medium of adjustment time | |
CN103576834B (en) | Electricity-saving control method and the electronic equipment for supporting electricity-saving control method | |
CN106155504B (en) | Mould group awakening method and device | |
EP3133874B1 (en) | Method and apparatus for starting energy saving mode | |
RU2606051C2 (en) | Processing method and device for application program | |
EP3035489B1 (en) | Method and device for charge management | |
US20110119578A1 (en) | Method of scrolling items on a touch screen user interface | |
CN105528055B (en) | Run the processing method and processing device of object | |
US20140289683A1 (en) | Method and apparatus for calculating channel quality adaptively in mobile communication system | |
CN105487680B (en) | Method, apparatus and terminal for terminal screenshotss | |
CN104636065A (en) | Method and device for awakening terminal | |
CN105137831B (en) | Energy-saving mode open method and device | |
CN111240817B (en) | Resource scheduling method, resource scheduling device and storage medium | |
US11222223B2 (en) | Collecting fingerprints | |
CN108776624A (en) | Determine the method, apparatus and storage medium of terminal interim card reason | |
CN106095544B (en) | Central processing unit control method and device | |
CN106371831A (en) | Awakening control method and device and terminal | |
CN106502740B (en) | Using installation method and device | |
CN106201611B (en) | Run the method and device of application | |
CN108228245A (en) | The screen control method and device of a kind of mobile terminal | |
CN107526425A (en) | A kind of electricity saving method, device and electronic equipment | |
US20140033231A1 (en) | Electronic device with a function of alerting running applications and method thereof | |
CN107463478A (en) | The control method and device of terminal device | |
CN109213264A (en) | Electronic equipment, volume adjusting method and device, computer readable storage medium | |
CN113655984A (en) | Audio playback control method, audio playback control device, and computer 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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |