Struct ByteReleaseContext
Defined in File release-context.h
Inheritance Relationships
Base Type
public CE::Memory::AbstractBlockManager< void >(Template Struct AbstractBlockManager)
Struct Documentation
-
struct ByteReleaseContext : public CE::Memory::AbstractBlockManager<void>
Declaration:
finalRetains byte bookkeeping for final releases independently of a Manager facade.
All void managers share this domain; growth policy only affects checkout. Handles capture this context before the facade can be destroyed. Returning storage never dereferences that facade or performs a singleton lookup. Returns validate and commit under the shared domain’s transaction locks.
Public Functions
-
inline void return_chunk(const ::CE::Memory::HeapBlock &returned)
Return a complete checked-out byte range under shared-domain transaction locks.
- Parameters:
returned – Exact current range, with valid backing owner/head/length metadata. Unknown/already-pooled/invalid ranges throw failed_operation after unlocked diagnostics. No objects are destroyed by this byte operation; backing ownership remains pooled until culling releases it.
-
inline void release_owned(const ::CE::Memory::HeapBlock &returned) noexcept
Final-owner return independent of a Manager facade or singleton lookup.
See also
- Parameters:
returned – Known valid checked-out byte range, returned exactly once after all users stop. Invalid bookkeeping or allocation/locking failure is reported and terminates instead of escaping a shared_ptr deleter. Never use this to hide recoverable arbitrary-pointer validation.
-
inline void return_chunk(const ::CE::Memory::HeapBlock &returned)