Summary
This episode examines the claim that std::bad_alloc exceptions are obsolete due to modern operating systems' memory overcommitment. Through practical demonstrations on different systems, Jason shows two distinct scenarios: on 64-bit systems, memory overcommitment often leads to process termination when physical memory is exhausted, but on 32-bit systems, std::bad_alloc occurs when address space constraints or memory fragmentation prevent allocation. He also points out that specialized memory contexts like GPUs still rely on allocation failure handling.
Related C++ Standard Sections
This episode covers topics found in these sections of the C++ standard:
-
[bad.alloc]77% match