Structured Concurrency in Action
A deep dive into Java 25's structured concurrency API, covering its features, error handling, and practical application with code examples.
A deep dive into Java 25's structured concurrency API, covering its features, error handling, and practical application with code examples.
Explores C++ static local variables, their thread-safe initialization since C++11, and techniques to avoid associated performance costs.
Explains the Initialization-on-Demand Holder idiom for lazy, thread-safe static initialization in Java, comparing it to alternatives.
Explains the Double-Checked Locking pattern in Java for thread-safe lazy initialization, covering its pitfalls and correct implementation.
Explores the new System.Threading.Lock type in C# 13, a lightweight, safer synchronization primitive for multi-threaded code.
Introduces the new System.Threading.Lock type in .NET 9, a dedicated lock type that aims to be more explicit and potentially faster than using a plain object with the lock keyword.
Explores implementing multi-threading in the Hare programming language for the Helios micro-kernel, covering kernel and userspace design.
Explains how to use the Task Parallel Library (TPL) in .NET to process collections faster by implementing data parallelism.
An introduction to Web Workers, explaining how they enable multithreading in JavaScript to prevent UI blocking, with basic usage examples.
A graduate's review of the challenging CS6200 Introduction to Operating Systems course in the OMSCS program, covering projects, workload, and tips.
An introduction to Awaitility, a Java library for testing asynchronous and multi-threaded code, making tests concise and readable.
Learn how to use Web Workers to run intensive JavaScript tasks off the main thread, preventing a frozen UI and improving app performance.
Explores transactional memory concepts like Intel's TSX, comparing deadlocks vs. livelocks, and discusses security implications like Spectre/Meltdown.
Learn how to speed up Python I/O-bound tasks like downloading multiple URLs using the ThreadPoolExecutor for multithreading.
Explains the differences between Web Workers, Service Workers, and Worklets in JavaScript, detailing their distinct purposes and use cases.
A comprehensive tutorial on using Grand Central Dispatch (GCD) for multi-threading and concurrency in Swift programming.
Extends dispatcher-agnostic view-models to work across multiple windows and UI threads using SynchronizationContext.
A guide to creating view-models in MVVM applications that automatically handle UI thread dispatching, making them independent of specific dispatcher implementations.
Explains how malloc's per-thread memory arenas cause memory fragmentation in multi-threaded Ruby programs and how setting MALLOC_ARENA_MAX can reduce usage.
Explores the inconsistent behavior of AbandonedMutexException in .NET vs. Windows Phone 8, detailing mutex synchronization and platform-specific quirks.