Module Kcas.Mode

Operating modes of the k-CAS-n-CMP algorithm.

type t

Type of an operating mode of the k-CAS-n-CMP algorithm.

val lock_free : t

In lock_free mode the algorithm makes sure that at least one domain will be able to make progress at the cost of performing read-only operations as read-write operations.

val obstruction_free : t

In obstruction_free mode the algorithm proceeds optimistically and allows read-only operations to fail due to Interference from other domains that might have been prevented in the lock_free mode.

exception Interference

Exception raised when interference from other domains is detected in the obstruction_free mode. Interference may happen when some location is accessed by both a compare-and-set and a (read-only) compare operation. It is not necessary for the compare-and-set to actually change the logical value of the location.