TLockFreeFixedSizeAllocator

Thread safe, lock free pooling allocator of fixed size blocks that never returns free space until program shutdown.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

TLockFreeFixedSizeAllocator

TLockFreeClassAllocator

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/Containers/LockFreeFixedSizeAllocator.h

Include

#include "Containers/LockFreeFixedSizeAllocator.h"

Syntax

template<int32 SIZE, int TPaddingForCacheContention, typename TTrackingCounter, bool AllowDisablingOfTrim>
class TLockFreeFixedSizeAllocator

Remarks

Thread safe, lock free pooling allocator of fixed size blocks that never returns free space until program shutdown. alignment isn't handled, assumes FMemory::Malloc will work

Destructors

Name Description

Public function

~TLockFreeFixedSizeAllocator()

Destructor, returns all memory via FMemory::Free

Functions

Name Description

Public function

void *

 

Allocate()

Allocates a memory block of size SIZE.

Public function

void

 

Free

(
    void* Item
)

Puts a memory block previously obtained from Allocate() back on the free list for future use.

Public function Const

const TTrack...

 

GetNumFree()

Gets the number of allocated memory blocks that are currently unused.

Public function Const

const TTrack...

 

GetNumUsed()

Gets the number of allocated memory blocks that are currently in use.

Public function

void

 

Trim()

Returns all free memory to the heap