Can we avoid the heap allocation in macOS Mutex/Condvar? #131005
Labels
A-atomic
Area: Atomics, barriers, and sync primitives
C-optimization
Category: An issue highlighting optimization opportunities or PRs implementing such
O-macos
Operating system: macOS
T-libs
Relevant to the library team, which will review and decide on the PR/issue.
This was brought up over here: our current macOS implementation for
Mutex
andCondvar
use heap allocations. That's unfortunate because it can lead to OOM, and also seems like a slight efficiency hit.Heap allocations are required because we are using the pthread API on macOS, and pthread Mutexes are not movable. AFAIK, @joboet has been working on alternative implementations that avoid the pthread API (#122408). The alternative, suggested by @daira , is to get Apple to guarantee that their pthread mutexes are movable under certain conditions. Given the black box that Apple is, I have no idea if that's even remotely realistic. But anyway it seems worth tracking this somewhere so here we go. :)
The text was updated successfully, but these errors were encountered: