1. A computer controlled method for committing a transaction to a shared memory, said shared memory in communication with one or more processors executing a plurality of threads, each of said one or more processors having the capability to operate a lock in said shared memory, said transaction having a read-set and a write-set, said read-set identifying a first read location of said shared memory covered by a first lock object, said write-set identifying a result data value to be stored at a first write location of said shared memory covered by a second lock object, said first lock object and said second lock object each having a reader mode and a writer mode, said method comprising: acquiring said first lock object using said reader mode; acquiring said second lock object using said writer mode; storing said result data value at said first write location in said shared memory subsequent to the acquiring of said second lock object; releasing said second lock object subsequent to storing; and releasing said first lock object subsequent to storing.