Nebenläufigkeitsprobleme
Concurrency (German: Nebenläufigkeit) refers to the ability of a system to perform multiple tasks in overlapping time periods. Concurrency focuses on structuring a program so that it can manage multiple tasks that make progress, while parallelism is a form of execution in which tasks run simultaneously, typically on multi-core hardware.
Two common models are shared-memory concurrency, where multiple threads or lightweight processes access a common address
Concurrency introduces nondeterminism and potential errors such as data races when two tasks access the same
Common techniques include mutual exclusion, atomic operations, critical sections, and higher-level abstractions such as monitors, transactional
Concurrency improves responsiveness, throughput, and resource utilization, especially in interactive applications and servers that must handle