Search                        Top                                  Index
HELP SYS_LOCK_HEAP                                   J. Gibson, Aug 1982

    sys_lock_heap()

-sys_lock_heap- tells the system to 'lock' the heap at its current
endpoint. The effect of this is that all structures in the heap before
this point will automatically be treated as non-garbage, considerably
reducing the amount of work needed to be done on them during a garbage
collection. Structures created after a call of -sys_lock_heap- will be
treated normally. The procedure *SYS_UNLOCK_HEAP undoes the effect.

It is best to call *SYSGARBAGE before -sys_lock_heap-. For example at
the end of a file which compiles a lot of procedures which are not going
to be edited, do

    sysgarbage();
    sys_lock_heap();

Also see:

    *SYS_UNLOCK_HEAP    --- Unlocking the heap
    *SYSGARBAGE         --- Causes a garbage collection
    *POPMEMLIM          --- Setting the maximum memory size
    *POPMEMUSED         --- The memory used at the last garbage
                            collection
    *POPGCTRACE         --- Tracking garbage collections
    *POPGCRATIO         --- Controlling when garbage collection occurs
    *POPGCTIME          --- The time spent garbage collecting.

    REF *SYSTEM --- POPLOG system control procedures


--- C.all/help/sys_lock_heap
--- Copyright University of Sussex 1992. All rights reserved. ----------