Concurrency Patterns
   HOME

TheInfoList



OR:

In
software engineering Software engineering is a branch of both computer science and engineering focused on designing, developing, testing, and maintaining Application software, software applications. It involves applying engineering design process, engineering principl ...
, 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 * Balking pattern * Barrier * Double-checked locking * Guarded suspension * Leaders/followers pattern * Monitor object *
Nuclear reaction In nuclear physics and nuclear chemistry, a nuclear reaction is a process in which two atomic nucleus, nuclei, or a nucleus and an external subatomic particle, collide to produce one or more new nuclides. Thus, a nuclear reaction must cause a t ...
*
Reactor pattern The reactor software design pattern is an event handling strategy that can respond to many potential service requests concurrently. The pattern's key component is an event loop, running in a ''single'' thread or process, which demultiplexes inc ...
* Readers–writer lock * Scheduler pattern * Thread pool pattern *
Thread-local storage In computer programming, thread-local storage (TLS) is a memory management method that uses static memory allocation, static or global computer storage, memory local to a thread (computing), thread. The concept allows storage of data that appear ...


See also

* '' Design Patterns'' (book) * Behavioral pattern *
Creational pattern In software engineering, creational design patterns are design patterns that deal with object creation Object may refer to: General meanings * Object (philosophy), a thing, being, or concept ** Object (abstract), an object which does not ex ...
* Structural pattern


References


External links


ScaleConf Presentation about concurrency patterns

GopherCon Rethinking Classical Concurrency Patternsslides

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
Concurrent computing Software design patterns Concurrency (computer science) {{comp-sci-stub