Glossary

Tony Arcieri edited this page Jul 7, 2014 · 11 revisions

Actor

Actors are a concurrency primitive which combine computation, state, and messages. In Celluloid, actors are also synonymous with concurrent objects, and are perhaps more aptly described as cells.

ATOM Mode

ATOM Mode is Celluloid's default [execution mode](Pipelining and Execution Modes) and refers to the ATOM concurrent object system for Python. In the ATOM model, concurrent objects pipeline work by allowing concurrently executing methods to be suspended and resumed based on incoming messages, albeit all but one is blocked on an outstanding message (thus there is no parallelism to the message processing)

The opposite of ATOM Mode is Exclusive Mode or Erlang Mode where actors (a.k.a. cells) only process one message at a time.

Cell

Cell refers to a concurrent object within Celluloid. For all intents and purposes within Celluloid, cells are synonymous with actors.

Erlang Mode

An alternative name for exclusive mode

Exclusive Mode

An [execution mode](Pipelining and Execution Modes) where actors (a.k.a. cells) only process one message at a time. The opposite of Erlang Mode is ATOM Mode where actors pipeline work and are potentially processing many methods simultaneously, albeit all but one is blocked on an outstanding message (thus there is no parallelism to the message processing)

Linking

A system Celluloid uses to propagate errors between actors. Linking can either be unidirectional (using monitor) or bidirectional (using link)