Partager via


rts_alloc, classe

Le modèle de classe rts_alloc décrit un filtre qui contient un tableau d’instances de cache et détermine l’instance à utiliser pour l’allocation et la désallocation au moment de l’exécution au lieu du moment de la compilation.

Syntaxe

template <class Cache>
class rts_alloc

Paramètres

Cache
Type d'instances de cache contenu dans le tableau. Il peut s’agir de cache_chunklist, cache_freelist ou cache_suballoc.

Notes

Ce modèle de classe contient plusieurs instances d’allocateur de bloc et détermine l’instance à utiliser pour l’allocation ou la désallocation au moment de l’exécution au lieu du moment de la compilation. Elle est utilisée avec les compilateurs qui ne peuvent pas compiler la reliaison.

Fonctions Membre

Fonction membre Description
allocate Alloue un bloc de mémoire.
deallocate Libère du stockage un nombre d'objets spécifié à partir d'une position spécifiée.
equals Compare l'égalité de deux caches.

Spécifications

Header :<allocators>

Espace de noms : stdext

rts_alloc ::allocate

Alloue un bloc de mémoire.

void *allocate(std::size_t count);

Paramètres

count
Nombre d’éléments du tableau à allouer.

Valeur de retour

Un pointeur vers l’objet alloué.

Notes

La fonction membre retourne caches[_IDX].allocate(count), où l’index _IDX est déterminé par le nombre de tailles de bloc demandé, ou, si le nombre est trop grand, il retourne operator new(count). cache, qui représente l’objet cache.

rts_alloc ::d allocation

Libère du stockage un nombre d'objets spécifié à partir d'une position spécifiée.

void deallocate(void* ptr, std::size_t count);

Paramètres

ptr
Pointeur vers le premier objet à désallouer dans le stockage.

count
Nombre d’objets à désallouer dans le stockage.

Notes

La fonction membre appelle caches[_IDX].deallocate(ptr, count), où l’index _IDX est déterminé par le nombre de tailles de bloc demandé, ou, si le nombre est trop grand, il retourne operator delete(ptr).

rts_alloc ::equals

Compare l'égalité de deux caches.

bool equals(const sync<_Cache>& _Other) const;

Paramètres

_Cache
Objet cache associé au filtre.

_Autre
Objet cache dont l’égalité est à comparer.

Notes

true si le résultat est caches[0].equals(other.caches[0]). Sinon, false. caches représente le tableau d’objets cache.

Voir aussi

ALLOCATOR_DECL
<allocators>