Archived issue #0021457
Make Standard::Purge() working hard to return more memory to the system
Description
The current version of the method Purge of the class Standard_MMgrOpt releases
only free memory blocks of sizes greater than the value of MMGT_CELLSIZE (200 by
default). Smaller blocks are allocated from within so named memory pools, and
they are never returned to the system. With this improvement, the method Purge()
finds the pools that do not contain any busy blocks and releases them.
only free memory blocks of sizes greater than the value of MMGT_CELLSIZE (200 by
default). Smaller blocks are allocated from within so named memory pools, and
they are never returned to the system. With this improvement, the method Purge()
finds the pools that do not contain any busy blocks and releases them.
Additional information
Documentation remark, added by Author 2009-11-04 10:36:19:
Improvements:
Memory management.
The method Standard::Purge has been improved. The previous implementation of
this method in the class Standard_MMgrOpt released only free memory blocks of
sizes greater than the value of MMGT_CELLSIZE (200 by default). Smaller blocks
are allocated from within so named memory pools, and they were never returned to
the system. With this improvement, the method Purge() finds the pools that do
not contain any busy blocks and releases them. After that the virtual address
space is really returned to the system.
Improvements:
Memory management.
The method Standard::Purge has been improved. The previous implementation of
this method in the class Standard_MMgrOpt released only free memory blocks of
sizes greater than the value of MMGT_CELLSIZE (200 by default). Smaller blocks
are allocated from within so named memory pools, and they were never returned to
the system. With this improvement, the method Purge() finds the pools that do
not contain any busy blocks and releases them. After that the virtual address
space is really returned to the system.
Public activity
No public notes
Participants are labeled by their role within this record.