Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::impl::MemoryPool

Classe pour gérer une liste de zone allouées. Plus de détails...

#include <arcane/utils/internal/MemoryPool.h>

+ Graphe d'héritage de Arcane::impl::MemoryPool:
+ Graphe de collaboration de Arcane::impl::MemoryPool:

Classes

class  Impl
 

Fonctions membres publiques

 MemoryPool (IMemoryPoolAllocator *allocator, const String &name)
 
voidallocateMemory (size_t size) override
 Alloue un bloc pour size octets.
 
void freeMemory (void *ptr, size_t size) override
 Libère le bloc situé à l'adresse address contenant size octets.
 
void dumpStats (std::ostream &ostr)
 
void dumpFreeMap (std::ostream &ostr)
 
String name () const
 
void setMaxCachedBlockSize (size_t v)
 Positionne la taille en octet à partir de laquelle on ne conserve pas un bloc dans le cache.
 
void freeCachedMemory ()
 Libère la mémoire dans le cache.
 

Attributs privés

std::shared_ptr< Implm_p
 

Description détaillée

Classe pour gérer une liste de zone allouées.

Cette classe utilise une sémantique par référence.

L'allocateur passé en argument du constructeur doit rester valide durant toute la vie de l'instance.

Définition à la ligne 63 du fichier MemoryPool.h.

Documentation des constructeurs et destructeur

◆ MemoryPool()

Arcane::impl::MemoryPool::MemoryPool ( IMemoryPoolAllocator allocator,
const String name 
)
explicit

Définition à la ligne 349 du fichier MemoryPool.cc.

◆ ~MemoryPool()

Arcane::impl::MemoryPool::~MemoryPool ( )

Définition à la ligne 358 du fichier MemoryPool.cc.

Documentation des fonctions membres

◆ allocateMemory()

void * Arcane::impl::MemoryPool::allocateMemory ( size_t  size)
overridevirtual

Alloue un bloc pour size octets.

Implémente Arcane::impl::IMemoryPoolAllocator.

Définition à la ligne 366 du fichier MemoryPool.cc.

◆ dumpFreeMap()

void Arcane::impl::MemoryPool::dumpFreeMap ( std::ostream &  ostr)

Définition à la ligne 378 du fichier MemoryPool.cc.

◆ dumpStats()

void Arcane::impl::MemoryPool::dumpStats ( std::ostream &  ostr)

Définition à la ligne 374 du fichier MemoryPool.cc.

◆ freeCachedMemory()

void Arcane::impl::MemoryPool::freeCachedMemory ( )

Libère la mémoire dans le cache.

Définition à la ligne 392 du fichier MemoryPool.cc.

◆ freeMemory()

void Arcane::impl::MemoryPool::freeMemory ( void address,
size_t  size 
)
overridevirtual

Libère le bloc situé à l'adresse address contenant size octets.

Implémente Arcane::impl::IMemoryPoolAllocator.

Définition à la ligne 370 du fichier MemoryPool.cc.

◆ name()

String Arcane::impl::MemoryPool::name ( ) const

Définition à la ligne 383 du fichier MemoryPool.cc.

◆ setMaxCachedBlockSize()

void Arcane::impl::MemoryPool::setMaxCachedBlockSize ( size_t  v)

Positionne la taille en octet à partir de laquelle on ne conserve pas un bloc dans le cache.

Cette méthode ne peut être appelé que s'il n'y a aucun bloc dans le cache.

Définition à la ligne 387 du fichier MemoryPool.cc.

Documentation des données membres

◆ m_p

std::shared_ptr<Impl> Arcane::impl::MemoryPool::m_p
private

Définition à la ligne 95 du fichier MemoryPool.h.


La documentation de cette classe a été générée à partir des fichiers suivants :