In software engineering, concurrency patterns are those types of design patterns that deal with the multi-threaded programming paradigm.
Examples of this class of patterns include:
Active Object[1][2]
Balking pattern
Barrier
Double-checked locking
Guarded suspension
Leaders/followers pattern
Monitor Object
Nuclear reaction
Reactor pattern
Read write lock pattern
Scheduler pattern
Thread pool pattern
Thread-local storage
^Douglas C. Schmidt, Michael Stal, Hans Rohnert, Frank Buschmann "Pattern-Oriented Software Architecture, Volume 2, Patterns for Concurrent and Networked Objects", Wiley, 2000
^R. Greg Lavender, Douglas C. Scmidt (1995). "Active Object" (PDF). Archived from the original (PDF) on 2010-06-15. Retrieved 2010-06-17.
and 18 Related for: Concurrency pattern information
In software engineering, a design pattern describes a relatively small, well-defined aspect (i.e. functionality) of a computer program in terms of how...
inheritance Visitor pattern A way to separate an algorithm from an object Concurrencypattern Creational pattern Structural pattern "Externalize The Stack"...
computer programming, a thread pool is a software design pattern for achieving concurrency of execution in a computer program. Often also called a replicated...
objects Singleton pattern: restrict instantiation of a class to one object Constructor Behavioral patternConcurrencypattern Structural pattern Gamma, Erich;...
Proxy pattern: a class functioning as an interface to another thing Abstract Document Pattern Behavioral patternConcurrencypattern Creational pattern Wikimedia...
2021, Swift adopted structured concurrency. Later that year, a draft proposal was published to add structured concurrency to Java. A major point of variation...
Message-passing concurrency tends to be far easier to reason about than shared-memory concurrency, and is typically considered a more robust form of concurrent programming...
first described as a technique by Victor Porton. This pattern comes under concurrencypatterns. As an alternative to the aspect-oriented implementation...
software design pattern is an event handling strategy that can respond to many potential service requests concurrently. The pattern's key component is...
In software engineering, the singleton pattern is a software design pattern that restricts the instantiation of a class to a singular instance. One of...
In the field of software development, an interceptor pattern is a software design pattern that is used when software systems or frameworks want to offer...
work is also responsible for handling concurrency issues, and can be used for transactions and stability patterns.[de] ACID (atomicity, consistency, isolation...
models extend sequential pattern mining to more complex patterns that can include (exclusive) choices, loops, and concurrency constructs in addition to...
and deserialization mechanisms for transferring data over the wire. This pattern is often incorrectly used outside of remote interfaces. This has triggered...
The goal is to introduce concurrency, by using asynchronous method invocation and a scheduler for handling requests. The pattern consists of six elements:...
A visitor pattern is a software design pattern that separates the algorithm from the object structure. Because of this separation, new operations can be...