1. A data processing system comprising: at least one processor; a bus coupled to the at least one processor; at least one computer usable medium coupled to the bus, wherein the at least one computer usable medium contains a set of instructions for making a desirable idempotent atomic modification to a site in a code region forming part of a computer program during execution of the computer program by a plurality of threads, wherein the at least one processor is adapted to carry out the set of instructions by causing the data processing system to provide identical modification instructions to each thread for modifying the site in the code region, wherein the modification instructions direct each thread to make the desirable idempotent atomic modification.