llvm::ThreadSafeAllocator

Thread-safe allocator adaptor. Uses a spin lock on the assumption that contention here is extremely rare.

Synopsis

Declared in <llvm/Support/ThreadSafeAllocator.h>

template<class AllocatorType>
class ThreadSafeAllocator;

Description

TODO: Using a spin lock on every allocation can be quite expensive when contention is high. Since this is mainly used for BumpPtrAllocator and SpecificBumpPtrAllocator, it'd be better to have a specific thread-safe BumpPtrAllocator implementation that only use a fair lock when allocating a new slab but otherwise using atomic and be lock-free.

Member Functions

Name
Allocate
applyLocked