[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: when GC is permitted

This page is part of the web mail archives of SRFI 50 from before July 7th, 2015. The new archives for SRFI 50 contain all messages, not just those from before July 7th, 2015.




    > From: Richard Kelsey <kelsey@xxxxxxx>

    >    From: Jim Blandy <jimb@xxxxxxxxxx>
    >    Date: 07 Jan 2004 17:01:17 -0500

    >    I gather that your current inclination is to preserve the requirement
    >    that GC may only take place during calls to specially marked API
    >    functions.  Thus, collection must wait until all active C calls have
    >    called a marked API function.  Is that correct?

    > Yes.  An exception, which should be mentioned in the SRFI and
    > may affect your situation, is that systems using a conservative
    > GC could GC at any time.


How unfortunate.  If you actually make an FFI that abstracts over
value and location representations, along with the primitive
operations that work on them, then you won't have any such limitation.



    >    However, I would like to be able to use Scheme as an extension
    >    language for existing C programs that use multiple system threads, and
    >    I would like SRFI-50 to provide what I need to implement the C/Scheme
    >    glue for this.

    > To be useful in such a situation there would need to be a way to exit
    > and then re-enter the implicit critical section surrounding C calls.

What are you talking about?  I can imagine many interpretations of
what you're saying but none that make your statement both true and
significant.

-t