The name weak consistency may be used in two senses. In the first sense, strict and more popular, the weak consistency is one of the consistency models used in the domain of the concurrent programming (e.g. in distributed shared memory, distributed transactions etc.).
The protocol is said to support weak consistency if:
- All accesses to synchronization variables are seen by all processes (or nodes, processors) in the same order (sequentially) - these are synchronization operations. Accesses to critical sections are seen sequentially.
- All other accesses may be seen in different order on different processes (or nodes, processors).
- The set of both read and write operations in between different synchronization operations is the same in each process.
Therefore, there can be no access to a synchronization variable if there are pending write operations. And there can not be any new read/write operation started if system is performing any synchronization operation.
In the second, more general, sense weak consistency may be applied to any consistency model weaker than sequential consistency.
The opposite of weak consistency is strong consistency, where parallel processes can observe only one consistent state.
Famous quotes containing the words weak and/or consistency:
“Mothers who are strong people, who can pursue a life of their own when it is time to let their children go, empower their children of either gender to feel free and whole. But weak women, women who feel and act like victims of something or other, may make their children feel responsible for taking care of them, and they can carry their children down with them.”
—Frank Pittman (20th century)
“All religions have honored the beggar. For he proves that in a matter at the same time as prosaic and holy, banal and regenerative as the giving of alms, intellect and morality, consistency and principles are miserably inadequate.”
—Walter Benjamin (18921940)