pike.git / src / gc.c

version» Context lines:

pike.git/src/gc.c:23:   #include "constants.h"   #include "interpret.h"   #include "bignum.h"      #include "gc.h"   #include "main.h"   #include <math.h>      #include "block_alloc.h"    - RCSID("$Id: gc.c,v 1.153 2003/01/29 18:04:40 mast Exp $"); + RCSID("$Id: gc.c,v 1.154 2003/04/15 17:00:56 mast Exp $");      /* Run garbage collect approximately every time    * 20 percent of all arrays, objects and programs is    * garbage.    */      #define GC_CONST 20   #define MIN_ALLOC_THRESHOLD 1000 - #define MAX_ALLOC_THRESHOLD 10000000 + #define MAX_ALLOC_THRESHOLD 2000000000   #define MULTIPLIER 0.9   #define MARKER_CHUNK_SIZE 1023   #define GC_LINK_CHUNK_SIZE 31      /* The gc will free all things with no external references that isn't    * referenced by undestructed objects with destroy() lfuns (known as    * "live" objects). Live objects without external references are then    * destructed and garbage collected with normal refcount garbing    * (which might leave dead garbage around for the next gc). These live    * objects are destructed in an order that tries to be as well defined