Patent ID: 7426511

Claim:
A method for updating a shared data element group while preserving group integrity on behalf of one or more readers that are concurrently referencing group data elements without using locks or atomic instructions, comprising: generating a new group data element; assigning a new generation number to said new data element that is different than an existing global generation number associated with said data element group and which allows a reader of said data element group to determine whether said new data element is a correct version for said reader; establishing a first version link from said new data element to a prior version thereof having a different generation number; establishing a second version link from said prior version to said new data element; linking said new data element into said data element group so that it is reachable by readers; updating said global generation number associated with said data element group to correspond to said new generation number; and freeing said prior version and said first and second version links following a grace period.