Concurrent programming languages are programming languages that use language constructs for concurrency. This means that coroutines provide concurrency but not parallelism. Some concurrent programming models include coprocesses and deterministic concurrency. Online transaction process concerns about concurrency and atomicity. Such systems improve performance and scalability by omitting heavyweight recovery or concurrency control. Message passing languages provide language constructs for concurrency. Erlang's main strength is support for concurrency. SQL Server provides two modes of concurrency control&colon; pessimistic concurrency and optimistic concurrency. Message passing is key to some models of concurrency and object-oriented programming. Typical flowchart techniques lack constructs for expressing concurrency. Rust is a multi-paradigm programming language focused on performance and safety, especially safe concurrency. Both use additional information for relaxing CO constraints and achieving better concurrency and performance. Programmers needed to implement green threads in order to simulate local concurrency. This generates a need in effective distributed concurrency control mechanisms. The key goals of OLTP applications are availability, speed, concurrency and recoverability.