Concurrency

In object-oriented programming, as in the real world, objects interact with each other. Assume, for example, throngs of people interacting at rush hour in the business district of a big city. A program that aspires to simulate the real world would have to enable many objects to interact at any given time. That could mean thousands of objects running simultaneously, all of them sending messages to each other. In Rexx, the term for this simultaneous activity is called concurrency. To be precise, the concurrency is object-oriented concurrency because it involves objects, as opposed to, for example, processes or threads.

Rexx objects are inherently concurrent, and this concurrency takes the following forms:

The default settings in Rexx allow full inter-object concurrency but limited intra-object concurrency. Some situations, however, call for full intra-object concurrency.