doc correction: interior pointers cannot be odd-valued
More precisely odd-valued references do not prevent GC of an enclosing object that is allocated in "interior" mode.
This commit is contained in:
parent
717521e498
commit
e62d9d1ede
|
@ -56,9 +56,12 @@ The basic collector allocation functions are:
|
||||||
in @secref["im:3m"]).}
|
in @secref["im:3m"]).}
|
||||||
|
|
||||||
@item{@cppi{scheme_malloc_allow_interior} --- Allocates an array of
|
@item{@cppi{scheme_malloc_allow_interior} --- Allocates an array of
|
||||||
pointers such that the array is never moved by the garbage collector
|
pointers with special treatment by 3m: the array is never moved by
|
||||||
and references are allowed into the middle of the block on 3m (and
|
the garbage collector, references are allowed into the middle of the
|
||||||
pointers to the middle prevent the block from being collected). Use
|
block, and even-valued pointers to the middle of the block prevent
|
||||||
|
the block from being collected. (Beware that the memory manager
|
||||||
|
treats any odd-valued pointer as a fixnum, even if it refers to the
|
||||||
|
middle of a block that allows interior pointers.) Use
|
||||||
this procedure sparingly, because small, non-moving objects are
|
this procedure sparingly, because small, non-moving objects are
|
||||||
handled less efficiently than movable objects by the 3m collector.
|
handled less efficiently than movable objects by the 3m collector.
|
||||||
This procedure is the same as @cppi{scheme_malloc} with the
|
This procedure is the same as @cppi{scheme_malloc} with the
|
||||||
|
|
Loading…
Reference in New Issue
Block a user