OxL Reference

§8. Concurrency and asynchronous chains

In this chapter

8.1 Execution modelThe unit of execution is the task
8.2 Suspension pointsA task can yield its thread only at suspension points
8.3 TaskTask<T, E> is a lazy computation.
8.4 ChainsA chain links asynchronous steps so that either the whole chain is executed or the first unhandled error is returned.
8.5 Structured concurrencyspawn is allowed only lexically inside scope { …
8.6 Cancellation and deadlinesCancellation is cooperative
8.7 Channels and selecttx.send(x) suspends when the buffer is full; cap
8.8 Local actorsMessages are processed strictly one at a time, in the order of arrival from each sender.
8.9 Software transactional memoryatomic { … } executes the body as a serialisable transaction over TVars.

See also

Source: docs/spec/oxl-standard.en.md