NeverFreeMemory

from panda3d.core import NeverFreeMemory
class NeverFreeMemory

Bases: DTOOL_SUPER_BASE

This class is used to allocate bytes of memory from a pool that is never intended to be freed. It is particularly useful to support DeletedChain, which allocates memory in just such a fashion.

When it is known that memory will not be freed, it is preferable to use this instead of the standard malloc() (or global_operator_new()) call, since this will help reduce fragmentation problems in the dynamic heap. Also, memory allocated from here will exhibit less wasted space.

Inheritance diagram

Inheritance diagram of NeverFreeMemory

__init__(*args, **kwargs)
getTotalAlloc()

C++ Interface: get_total_alloc()

/**
  • Returns the total number of bytes consumed by all the pages allocated

  • internally by this object.

*/

getTotalUnused()

C++ Interface: get_total_unused()

/**
  • Returns the difference between get_total_alloc() and get_total_used().

  • This represents bytes in allocated pages that have not (yet) been used by

  • the application.

*/

getTotalUsed()

C++ Interface: get_total_used()

/**
  • Returns the total number of bytes requested by the application in calls to

  • NeverFreeMemory::alloc().

*/

get_total_alloc()

C++ Interface: get_total_alloc()

/**
  • Returns the total number of bytes consumed by all the pages allocated

  • internally by this object.

*/

get_total_unused()

C++ Interface: get_total_unused()

/**
  • Returns the difference between get_total_alloc() and get_total_used().

  • This represents bytes in allocated pages that have not (yet) been used by

  • the application.

*/

get_total_used()

C++ Interface: get_total_used()

/**
  • Returns the total number of bytes requested by the application in calls to

  • NeverFreeMemory::alloc().

*/