Concurrency pattern
A concurrency pattern is a software design pattern that supports concurrent processing.
A concurrency pattern is a software design pattern that supports concurrent processing.
Examples include:
-
Active object
-
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
-
Behavioral pattern
-
Creational pattern
-
Structural pattern
.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}body.skin-vector-2022 .mw-parser-output .reflist-columns-2{column-width:27em}body.skin-vector-2022 .mw-parser-output .reflist-columns-3{column-width:22.5em}.mw-parser-output .references[data-mw-group=upper-alpha]{list-style-type:upper-alpha}.mw-parser-output .references[data-mw-group=upper-roman]{list-style-type:upper-roman}.mw-parser-output .references[data-mw-group=lower-alpha]{list-style-type:lower-alpha}.mw-parser-output .references[data-mw-group=lower-greek]{list-style-type:lower-greek}.mw-parser-output .references[data-mw-group=lower-roman]{list-style-type:lower-roman}.mw-parser-output div.reflist-liststyle-upper-alpha .references{list-style-type:upper-alpha}.mw-parser-output div.reflist-liststyle-upper-roman .references{list-style-type:upper-roman}.mw-parser-output div.reflist-liststyle-lower-alpha .references{list-style-type:lower-alpha}.mw-parser-output div.reflist-liststyle-lower-greek .references{list-style-type:lower-greek}.mw-parser-output div.reflist-liststyle-lower-roman .references{list-style-type:lower-roman}
- 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
.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox-body{font-style:italic}.mw-parser-output .asbox-note{font-size:smaller}.mw-parser-output .asbox .navbar{position:absolute;top:-0.75em;right:1em;display:none}.mw-parser-output :not(p):not(.asbox)+style+.asbox,.mw-parser-output :not(p):not(.asbox)+link+.asbox{margin-top:3em}