A chord is a concurrency construct available in
Polyphonic C♯ and
Cω inspired by the join pattern of the
join-calculus
The join-calculus is a process calculus developed at INRIA. The join-calculus was developed to provide a formal basis for the design of distributed programming languages, and therefore intentionally avoids communications constructs found in othe ...
. A chord is a function body that is associated with multiple function headers and cannot execute until all function headers are called.
Synchronicity
Cω defines two types of functions synchronous and asynchronous. A synchronous function acts like a standard function in most Object-Oriented Language, upon invocation the function body is executed and a return value may or may not be returned to the caller. An asynchronous function acts similar to a function that returns void except that it is guaranteed to return immediately with the execution being done in a separate thread.
References
{{reflist, 1
Concurrency (computer science)