Allowing GC in Allegro CL SMP during foreign function calls

Felix Filozov ffilozov at gmail.com
Tue Aug 6 16:22:07 UTC 2013


Do you mean an Allegro CL test? I don't think that's necessary since the
manual is clear on the behavior, and I've witnessed GC block in my own code.

>From reading other posts in the thread, it does seem that Allegro CL is the
outlier.

I could add a note in the manual that mentions that whether GC blocks
during a foreign function call is implementation dependent.


On Fri, Aug 2, 2013 at 2:54 AM, Luís Oliveira <loliveira at common-lisp.net>wrote:

> On Wed, Jul 31, 2013 at 10:15 AM, Stelian Ionescu <sionescu at cddr.org>
> wrote:
> > SBCL never disables GC globally, and I don't think that CCL, ECL or ABCL
> > do that either.
> >
> http://www.lispworks.com/documentation/lw61/FLI/html/fli-94.htm#pgfId-1070272has no mention of GC, so it would seem that among SMP Lisps Allegro is the
> only one to do sophisticated stuff. CMUCL and Clisp are currently
> single-threaded so GC is implicitly disabled during foreign calls.
>
> Precise confirmation would be nice -- a test perhaps -- would be nice.
> Felix, do you feel like writing a test that checks whether GC can
> happen while a foreign function call is ongoing?
>
> If we can confirm that ACL is the outlier, then (a) I'm all for
> changing cffi-allegro's implementation to match the semantics of the
> other Lisps and (b) documenting these semantics in the manual.
>
> Cheers,
>
> --
> Luís Oliveira
> http://kerno.org/~luis/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cffi-devel/attachments/20130806/b8814cdb/attachment.html>


More information about the cffi-devel mailing list