UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists Struct Reference

#include <MallocBinnedCommon.h>

Public Member Functions

UE_FORCEINLINE_HINT voidMalloc (uint32 InPoolIndex)
 
UE_FORCEINLINE_HINT bool Free (void *InPtr, uint32 InPoolIndex, uint32 InBinSize)
 
UE_FORCEINLINE_HINT bool CanFree (uint32 InPoolIndex, uint32 InBinSize) const
 
template<class T >
FBundleNodeRecycleFullBundle (uint32 InPoolIndex, T &InGlobalRecycler)
 
template<class T >
bool ObtainRecycledPartial (uint32 InPoolIndex, T &InGlobalRecycler)
 
FBundleNodePopBundles (uint32 InPoolIndex)
 
void Lock ()
 
bool TryLock ()
 
void Unlock ()
 
bool UpdateEpoch (uint64 NewEpoch)
 

Static Public Member Functions

static FPerThreadFreeBlockListsGet () TSAN_SAFE
 
static void SetTLS ()
 
static void UnlockTLS ()
 
static void LockTLS ()
 
static void ClearTLS ()
 

Public Attributes

int64 AllocatedMemory = 0
 

Member Function Documentation

◆ CanFree()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
UE_FORCEINLINE_HINT bool TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::CanFree ( uint32  InPoolIndex,
uint32  InBinSize 
) const
inline

◆ ClearTLS()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
static void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::ClearTLS ( )
inlinestatic

◆ Free()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
UE_FORCEINLINE_HINT bool TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::Free ( void InPtr,
uint32  InPoolIndex,
uint32  InBinSize 
)
inline

◆ Get()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
static FPerThreadFreeBlockLists * TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::Get ( )
inlinestatic

◆ Lock()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::Lock ( )
inline

◆ LockTLS()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
static void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::LockTLS ( )
inlinestatic

◆ Malloc()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
UE_FORCEINLINE_HINT void * TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::Malloc ( uint32  InPoolIndex)
inline

◆ ObtainRecycledPartial()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
template<class T >
bool TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::ObtainRecycledPartial ( uint32  InPoolIndex,
T &  InGlobalRecycler 
)
inline

◆ PopBundles()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
FBundleNode * TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::PopBundles ( uint32  InPoolIndex)
inline

◆ RecycleFullBundle()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
template<class T >
FBundleNode * TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::RecycleFullBundle ( uint32  InPoolIndex,
T &  InGlobalRecycler 
)
inline

◆ SetTLS()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
static void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::SetTLS ( )
inlinestatic

◆ TryLock()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
bool TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::TryLock ( )
inline

◆ Unlock()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::Unlock ( )
inline

◆ UnlockTLS()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
static void TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::UnlockTLS ( )
inlinestatic

◆ UpdateEpoch()

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
bool TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::UpdateEpoch ( uint64  NewEpoch)
inline

Member Data Documentation

◆ AllocatedMemory

template<class AllocType , int NumSmallPools, int MaxSmallPoolSize>
int64 TMallocBinnedCommon< AllocType, NumSmallPools, MaxSmallPoolSize >::FPerThreadFreeBlockLists::AllocatedMemory = 0

The documentation for this struct was generated from the following file: