All Stories

Java - no_image

Java

In tutorial, no_image, java, Jan 21, 2025

Chapter-16 - monitor-lock-rule

Chapter 16 - The Java Memory ModelThroughout the book, the topic of the Java Memory Model (JMM) was avoided as this includes some low-level details answering the question “why” certai...

In tutorial, monitor-lock-rule, java, Jan 21, 2025

Chapter-15 - high-contention-performance

Chapter 15 - Atomic Variables and Nonblocking synchronization

In tutorial, high-contention-performance, java, Jan 21, 2025

Chapter-14 - no_image

Chapter 14 - Building custom synchronizersWhen building a state-dependent class, you need to have certain preconditions met before performing an operation.E.g. the FutureTask needs to...

In tutorial, no_image, java, Jan 21, 2025

Chapter-13 - intrinsic-vs-explicit-locks

Chapter 13 - Explicit LocksExplicit locks are not a better alternative to intrinsic locks, but rather, an alternative with more advanced features.

In tutorial, intrinsic-vs-explicit-locks, java, Jan 21, 2025

Chapter-12 - bounder-buffer-performance

Chapter 12 - Testing Concurrent ProgramsTesting concurrent programs has some similarities with testing traditional programs.

In tutorial, bounder-buffer-performance, java, Jan 21, 2025

Chapter-11 - blocking-queue-comparison

Chapter 11 - Performance and ScalabilityThe rationale for using concurrency is often because one wants to achieve more performance.

In tutorial, blocking-queue-comparison, java, Jan 21, 2025

Chapter-10 - deadlock-example

Chapter 10 - Avoiding Liveness HazardsToo much safety could lead to liveness problems. Liveness == problems with your program crashing/stalling/being too slow but not necessarily prod...

In tutorial, deadlock-example, java, Jan 21, 2025

Chapter-09 - short-running-task-example

Chapter 09 - GUI ApplicationsGUI Applications have their own peculiar threading issues.

In tutorial, short-running-task-example, java, Jan 21, 2025