A concurrency pattern is a software design pattern that supports concurrent processing.

Examples Examples include:

Active objectDouglas C. Schmidt, Michael Stal, Hans Rohnert, Frank Buschmann "Pattern-Oriented Software Architecture, Volume 2, Patterns for Concurrent and Networked Objects", Wiley, 2000 Balking pattern Barrier Double-checked locking Guarded suspension Monitor object Nuclear reaction Reactor pattern Readers–writer lock Scheduler pattern Thread pool pattern Thread-local storage

See also Behavioral pattern Creational pattern Design Patterns Structural pattern

References

External links ScaleConf Presentation about concurrency patterns GopherCon Rethinking Classical Concurrency Patterns slides GoWiki: Learn Concurrency

Recordings about concurrency patterns from Software Engineering Radio: Episode 12: Concurrency Pt. 1 Episode 19: Concurrency Pt. 2 Episode 29: Concurrency Pt. 3