|
For cases where a long-running job needs to use dynamic storage, I have
found that using "pools" of like storage is useful. The idea is to
allocate all objects of a given "kind" (and lifetime) from the same
"pool" -- this way, when you are done with that "kind" of thing, you
just delete the entire pool. This simplified approach provides many of
the benefits of "generational garbage collection" as seen in Lisp,
Smalltalk, Java, etc., without all the overhead of true garbage
collection.
It is fairly easy to do this using ILE heap support by creating a new
ILE heap space for each unique "pool" (via the CRTHS MI instruction)
then allocating from that specific heap, as needed (via the ALCHSS MI
instruction). Then, when done with that "pool" of objects, issue the
DESHS MI instruction for that particular heap.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.