Re: Reinitializer failing to run

Taylor R Campbell <[email protected]> Mon, 29 Apr 2013 14:42:43 +0000
Newsgroups gmane.lisp.scheme.scheme48
Message-ID <[email protected]>
   Date: Mon, 29 Apr 2013 07:10:14 -0700
   From: Will Noble <[email protected]>

   It seems to me that we should be able to expect reinitializers to run. I=
'm
   not sure what the best solution here is. We could use a separate
   second-stage initialization thunk list to implement reinitializers, inst=
ead
   of the current method (relying on record resumers). Or maybe there is a
   natural way of ensuring that reinitializers are always reachable. If we =
find
   an acceptable solution I'd be happy to code it up.

If you want to guarantee that the reinitializer has been included in
the image in some code you want to run, you can pass it to the NO-OP
procedure (from the BIG-UTIL structure, if I recall correctly) in that
code.  E.g., you might do this at the start of WAIT-FOR-CHILD-PROCESS:

(define (wait-for-child-process pid)
  (no-op sigchld-reinitializer)
  ...mess with pid...)