Message-passing concurrency


The concurrency.messaging vocabulary is based upon the style of concurrency used in systems like Erlang and Termite. It is built on top of Co-operative threads.

A concurrency-oriented program is one in which multiple threads run simultaneously in a single Factor image or across multiple running Factor instances. The threads can communicate with each other by asynchronous message sends.

Although threads can share data via Factor's mutable data structures it is not recommended to mix shared state with message passing as it can lead to confusing code.
Sending and receiving messages
Synchronous sends
Linked exceptions