Total WebSite Views Count

Concurrency Patterns List


Pattern Name
Purpose/Description
Active Object
  • Decouples method execution from method invocation that reside in their own thread of control. 
  • The goal is to introduce concurrency, by using asynchronous method invocation and a scheduler for handling requests.

Balking
  • Only execute an action on an object when the object is in a particular state.

Binding properties
  • Combining multiple observers to force properties in different objects to be synchronized or coordinated in some way.

Blockchain
  • Decentralized way to store data and agree on ways of processing it i

Double-checked locking
  • Reduce the overhead of acquiring a lock by first testing the locking criterion (the 'lock hint') in an unsafe manner; only if that succeeds does the actual locking logic proceed.

Can be unsafe when implemented in some language/hardware combinations. It can therefore sometimes be considered an anti-pattern.
Event-based asynchronous
  • Addresses problems with the asynchronous pattern that occur in multithreaded programs.

Guarded suspension
  • Manages operations that require both a lock to be acquired and a precondition to be satisfied before the operation can be executed.

Join
  • Join-pattern provides a way to write concurrent, parallel and distributed programs by message passing. Compared to the use of threads and locks, this is a high-level programming model.

Lock
  • One thread puts a "lock" on a resource, preventing other threads from accessing or modifying it.

Messaging design pattern (MDP)
  • Allows the interchange of information (i.e. messages) between components and applications.

Monitor object
  • An object whose methods are subject to mutual exclusion, thus preventing multiple objects from erroneously trying to use it at the same time.

Reactor
  • A reactor object provides an asynchronous interface to resources that must be handled synchronously.

Read-write lock
  • Allows concurrent read access to an object, but requires exclusive access for write operations.

Scheduler
  • Explicitly control when threads may execute single-threaded code.

Thread pool
  • A number of threads are created to perform a number of tasks, which are usually organized in a queue. 
  • Typically, there are many more tasks than threads. Can be considered a special case of the object pool pattern.

Thread-specific storage
  • Static or "global" memory local to a thread.



AWS Services

AWS Services

Technology Selection & Evaluation Criteria

Technology Selection & Evaluation Criteria

Scale Cube - Scale In X Y Z Cube

Scale Cube - Scale In X Y Z Cube

Feature Post

AWS Services

About Me

About Me

Spring Cloud

Spring Cloud
Spring Cloud

Spring Cloud +mCloud Native + Big Data Archittect

Spring Cloud +mCloud Native + Big Data Archittect

ACID Transaction

ACID Transaction

Data Pipe Line Stack

Data Pipe Line Stack

Popular Posts