Atomicity (computer science)
Appearance
In computer science, an atomic operation is one that either completes fully, or has no lasting effect. It is a slightly ambiguous term:
- In database systems, it is one of the ACID properties. In this context, "atomic" means nothing more than the above definition. i.e. All transactions must succeed or entire transection rolled back.
- In other areas of computer science such as operating systems, "atomic" also refers to the property that the changes made by an operation are only visible after it completes. That is, that there are no intermediate states visible to other threads. In database systems, this property is described separately as isolation.
- In symbolic languages, like Lisp, S-expressions are made of atoms and lists of S-expressions. S-expressions are then atomic if they are atoms, for example, numerics or symbols.
- In other areas of computer science atomic can mean the smallest addressable unit of memory. The byte is typically atomic in this sense.