You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Restructure pointer/threading docs and add lock-free DS reference
Multithreading doc rewritten with numbered headings (1, 1.1, ...),
runnable examples, and new sections covering std::jthread/std::stop_token,
expanded semaphores, spurious wakeups, std::atomic with memory ordering,
and the ABA problem. Producer-consumer example simplified.
Pointer docs split:
- pointers.md: trimmed to raw pointers, dangling/wild, ASan
- smart_pointers.md (new): unique/shared/weak, custom deleters,
enable_shared_from_this, atomic smart pointers
- shared_ptr_use_cases.md (new): 12 patterns where shared ownership
is the right tool, with minimal code each
- references.md (new): refs, lvalue/rvalue, reference_wrapper, ref/cref
- passing_returning: renumbered, added const shared_ptr<T>& form,
enable_shared_from_this guidance
- smart_pointers_class_member: PIMPL idiom, polymorphic ownership,
Rule of Zero, thread-safety pointer-vs-pointee distinction
New docs/lock_free_data_structures.md covering SPSC ring buffer,
SPSC unbounded queue, MPSC (Vyukov intrusive), SPMC (Chase-Lev),
MPMC (Vyukov bounded), hazard pointers + Treiber stack, and
epoch-based reclamation, with full implementations.
README updated: pointer docs split into separate entries; broken
multithreading anchors fixed to numbered sections; lock-free docs
listed under C++ System Design.
clang_format.sh removed; clang-format is now driven from CMakeLists.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments