Design Patterns for Concurrency


This is a survey of existing work on design patterns for concurrency.

Concurrency Patterns, Nat Pryce
A small and incomplete collection of patterns related to concurrency, at a low level (threads and locks). The patterns are more in the narrative style. Useful as a reminder of strategies.

Design Patterns for Concurrent, Parallel, and Distributed Systems, Doug Schmidt
A collection of documented and published patterns for concurrent and distributed applications. The work is in the context of the Adaptive Communication Environment (ACE) project.

Other links:

Essential Software Design Patterns , Walter F. Tichy
Architectural-level design patterns. Has two unfinished patterns on concurrency and distribution.

Entity-life modeling and concurrent design patterns, Bo Sanden
Overview of the entity life modeling (ELM) approach. Sanden claims that "Like patterns, the entity-life modeling (ELM) design approach for concurrent software is a means for experienced designers to reason about designs." Mostly useful for (non-electronic) references.

Related links:

Parallel Patterns for Synchronization on Shared-Memory Multiprocessors
...

Search for concurrency on the Wiki Web
Or try the Find Page.

Patterns Home Page
General info on patterns:

Books