[Larceny-users] Passing bytevectors to C via the FFI
William D Clinger
will at ccs.neu.edu
Sat Dec 15 16:48:59 EST 2007
Lars wrote:
> Unless you're calling back into Scheme from C, letting the C code
> retain a pointer into the bytevector, or Larceny has become
> multithreaded (and one thread can cause GC while another is inside a
> foreign call), you should be safe.
Larceny will become multithreaded during the next couple
of years, but our current plans still call stop-the-world
gc, where we wait for all threads to reach a point that's
safe for gc before we actually perform the collection.
That means a call from Scheme to C that never returns will
cause all threads to hang waiting on a gc, but a call to C
that never returns will hang the entire program now anyway,
and we can detect that situation using timeouts.
Will
More information about the Larceny-users
mailing list