Claims Analysis
Total Claims: 37
Claim 1
Independent Claim
163 words
In a computer system that includes a plurality of threads and a set of objects that can each be synchronized with one or more of the threads from said plurality of threads, a method of synchronizing one of the objects from the set of objects with one or more of the threads from said plurality of threads, the method comprising the steps of: requesting synchronization of a first thread from said plurality of threads with a first object from said set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 2
Dependent Claim
163 words
In a computer system that includes a plurality of threads and a set of objects that can each be synchronized with one or more of the threads from said plurality of threads, a method of synchronizing one of the objects from the set of objects with one or more of the threads from said plurality of threads, the method comprising the steps of: requesting synchronization of a first thread from said plurality of threads with a first object from said set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 3
Dependent Claim
131 words
The method of claim 1 , further including the steps of: determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, where said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 4
Dependent Claim
33 words
The method of claim 2 , wherein the set of collection enabling conditions includes a number of synchronization constructs not associated with any object being less than or equal to a threshold number.
Claim 5
Dependent Claim
44 words
The method of claim 2 , the method further including the step of providing a thread-local cache assigned to each thread, wherein data in said thread-local cache assigned to a particular thread contains information referring to a synchronization construct currently associated with some object.
Claim 6
Dependent Claim
51 words
The method of claim 4 , wherein the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes using the data contained in said thread-local cache to access the synchronization construct referred to by information contained in said particular entry.
Claim 7
Dependent Claim
110 words
The method of claim 4 , wherein: an in-progress reference is associated with each thread from said plurality of threads; the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes storing information in the in-progress reference associated with said first thread indicating an identity of said first object; and the method further includes the steps of: storing information in said in-progress reference associated with said first thread indicating no identity of an object, and the association termination criteria further includes no in-progress reference associated with each thread from said plurality of threads containing information identifying said first object.
Claim 8
Dependent Claim
33 words
The method of claim 1 , wherein the step of maintaining an association includes maintaining said association between said particular synchronization construct and said first object until processed during a garbage collection operation.
Claim 9
Dependent Claim
222 words
In a computer system that includes a plurality of threads and a set of objects that can each be synchronized with one or more of the threads from said plurality of threads, a method of synchronizing one of the objects from the set of objects with one or more of the threads from said plurality of threads, the method comprising the steps of: associating one or more synchronization constructs with one or more objects from the set of objects when one or more threads from the plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 10
Dependent Claim
222 words
In a computer system that includes a plurality of threads and a set of objects that can each be synchronized with one or more of the threads from said plurality of threads, a method of synchronizing one of the objects from the set of objects with one or more of the threads from said plurality of threads, the method comprising the steps of: associating one or more synchronization constructs with one or more objects from the set of objects when one or more threads from the plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 11
Dependent Claim
33 words
The method of claim 8 , wherein the set of collection enabling conditions includes the number of synchronization constructs not associated with any object being less than or equal to a threshold number.
Claim 12
Dependent Claim
27 words
The method of claim 8 , wherein the set of association termination criteria includes no thread being synchronized with said object associated with said selected synchronization construct.
Claim 13
Dependent Claim
135 words
A computer readable medium having stored thereon a plurality of sequences of instructions, the plurality of sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: requesting synchronization of a first thread from a plurality of threads with a first object from a set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 14
Dependent Claim
135 words
A computer readable medium having stored thereon a plurality of sequences of instructions, the plurality of sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: requesting synchronization of a first thread from a plurality of threads with a first object from a set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 15
Dependent Claim
138 words
The computer readable medium of claim 11 , further comprising sequences of instructions for performing the steps of: determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 16
Dependent Claim
35 words
The computer readable medium of claim 12 , wherein the set of collection enabling conditions includes the number of synchronization constructs not assigned with any object being less than or equal to a threshold number.
Claim 17
Dependent Claim
49 words
The computer readable medium of claim 11 , further comprising sequences of instructions for performing the steps of providing a thread-local cache assigned to each thread, wherein data in said thread-local cache assigned to a particular thread contains information referring to a synchronization construct currently associated with some object.
Claim 18
Dependent Claim
52 words
The computer readable medium of claim 14 , wherein the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes using the data in said thread-local cache to access the synchronization construct referred to by information contained in said particular entry.
Claim 19
Dependent Claim
118 words
The computer readable medium of claim 14 , wherein: an in-progress reference is associated with each thread from said plurality of threads; the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes storing information in the in-progress reference associated with said first thread indicating an identity of said first object; the computer readable medium further comprising sequences of instructions for performing the step of storing information in said in-progress reference associated with said first thread indicating no identity of an object; and the association termination criteria further including no in-progress reference associated with each thread from said plurality of threads containing information identifying said first object.
Claim 20
Dependent Claim
200 words
A computer readable medium having stored thereon a plurality of sequences of instructions, the plurality of sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: providing a cache of synchronization constructs; associating one or more synchronization constructs with one or more objects from a set of objects when one or more threads from a plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 21
Dependent Claim
200 words
A computer readable medium having stored thereon a plurality of sequences of instructions, the plurality of sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: providing a cache of synchronization constructs; associating one or more synchronization constructs with one or more objects from a set of objects when one or more threads from a plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 22
Dependent Claim
35 words
The computer readable medium of claim 17 , wherein the set of collection enabling conditions includes the number of synchronization constructs not associated with any object being less than or equal to a threshold number.
Claim 23
Dependent Claim
152 words
A computer system comprising: a processor, wherein said processor is executing a plurality of threads; a memory coupled to said processor; said memory having stored therein a cache of synchronization constructs; said processor being configured to request a synchronization of a first thread from said plurality of threads with a first object from a set of objects; said processor being configured to determine whether a synchronization construct from said cache of synchronization constructs is associated with said first object; said processor being configured to respond to determining that a particular synchronization construct is associated with said first object by using said particular synchronization construct to synchronize said first thread with said first object; and said processor being configured to maintain an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 24
Dependent Claim
152 words
A computer system comprising: a processor, wherein said processor is executing a plurality of threads; a memory coupled to said processor; said memory having stored therein a cache of synchronization constructs; said processor being configured to request a synchronization of a first thread from said plurality of threads with a first object from a set of objects; said processor being configured to determine whether a synchronization construct from said cache of synchronization constructs is associated with said first object; said processor being configured to respond to determining that a particular synchronization construct is associated with said first object by using said particular synchronization construct to synchronize said first thread with said first object; and said processor being configured to maintain an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 25
Dependent Claim
139 words
The computer system of claim 19 , further comprising: said processor being configured to determine whether a condition in a set of garbage collection enabling conditions is satisfied; and said processor being configured to respond to determining that said condition in the set of garbage collection enabling conditions is satisfied, by performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 26
Dependent Claim
205 words
A computer system comprising: a processor, wherein said processor is executing a plurality of threads; a memory coupled to said processor; and said memory having stored therein a cache of synchronization constructs; said processor being configured to associate one or more synchronization constructs with one or more objects from a set of objects when one of more threads from said plurality of threads requests synchronization with said one or more objects from the set the objects; said processor being configured to determine whether a condition in a set of garbage collection enabling conditions is satisfied; and said processor being configured to respond to determining that said condition in the set of garbage collection enabling conditions is satisfied, by performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining that each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs; in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 27
Dependent Claim
205 words
A computer system comprising: a processor, wherein said processor is executing a plurality of threads; a memory coupled to said processor; and said memory having stored therein a cache of synchronization constructs; said processor being configured to associate one or more synchronization constructs with one or more objects from a set of objects when one of more threads from said plurality of threads requests synchronization with said one or more objects from the set the objects; said processor being configured to determine whether a condition in a set of garbage collection enabling conditions is satisfied; and said processor being configured to respond to determining that said condition in the set of garbage collection enabling conditions is satisfied, by performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining that each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs; in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 28
Dependent Claim
130 words
Sequences of instructions embodied in a carrier wave, the sequences of instructions including sequences of instructions which, when executed by a processor, cause said processor to perform the steps of: requesting synchronization of a first thread from a plurality of threads with a first object from a set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 29
Dependent Claim
130 words
Sequences of instructions embodied in a carrier wave, the sequences of instructions including sequences of instructions which, when executed by a processor, cause said processor to perform the steps of: requesting synchronization of a first thread from a plurality of threads with a first object from a set of objects; determining whether a synchronization construct from a cache of synchronization constructs is associated with said first object; in response to determining that a particular synchronization construct is associated with said first object, using said particular synchronization construct to synchronize said first thread with said first object; and maintaining an association between said particular synchronization construct and said first object when there is no thread waiting to be synchronized with said first object and no thread synchronized with said first object.
Claim 30
Dependent Claim
138 words
The sequences of instructions of claim 22 , further comprising sequences of instructions for performing the steps of: determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 31
Dependent Claim
35 words
The sequences of instructions of claim 23 , wherein the set of collection enabling conditions includes the number of synchronization constructs not assigned with any object being less than or equal to a threshold number.
Claim 32
Dependent Claim
49 words
The sequences of instructions of claim 23 , further comprising sequences of instructions for performing the steps of providing a thread-local cache assigned to each thread, wherein data in said thread-local cache assigned to a particular thread contains information referring to a synchronization construct currently associated with some object.
Claim 33
Dependent Claim
56 words
The sequences of instructions of claim 25 , wherein the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes using information contained in a particular entry in said thread-local cache to access the synchronization construct referred to by information contained in said particular entry.
Claim 34
Dependent Claim
118 words
The sequences of instructions of claim 25 , wherein: an in-progress reference is associated with each thread from said plurality of threads; the step of determining whether a synchronization construct from said cache of synchronization constructs is associated with said first object further includes storing information in the in-progress reference associated with said first thread indicating an identity of said first object; the sequences of instructions further comprising sequences of instructions for performing the step of storing information in said in-progress reference associated with said first thread indicating no identity of an object; and the association termination criteria further including no in-progress reference associated with each thread from said plurality of threads containing information identifying said first object.
Claim 35
Dependent Claim
187 words
Sequences of instructions embodied in a carrier wave, the sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: associating one or more synchronization constructs with one or more objects from the set of objects when one or more threads from the plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 36
Dependent Claim
187 words
Sequences of instructions embodied in a carrier wave, the sequences of instructions including sequences which, when executed by a processor, cause said processor to perform the steps of: associating one or more synchronization constructs with one or more objects from the set of objects when one or more threads from the plurality of threads requests synchronization with said one or more objects from the set the objects; determining whether a condition in a set of garbage collection enabling conditions is satisfied; and in response to determining that said condition in the set of garbage collection enabling conditions is satisfied, performing the steps of: selecting a synchronization construct from one or more associated synchronization constructs, each associated synchronization construct being associated with an object, determining whether each criterion in a set of association termination criteria is satisfied, wherein said set of association termination criterion indicates criteria for terminating associations between objects and synchronization constructs, and in response to determining that each criterion in the set of association termination criteria is satisfied, terminating the association between said selected synchronization construct and said object associated with said selected synchronization construct.
Claim 37
Dependent Claim
35 words
The sequences of instructions of claim 28 , wherein the set of collection enabling conditions includes the number of synchronization constructs not associated with any object being less than or equal to a threshold number.