X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Ftarget-thread.lisp;h=61ea1af1e7680405c26c5f54f06318d10546413b;hb=b0639279b6c76ab5aa53c58c41ae472eaa361222;hp=547ee9980854aee9613f5c7ad143d7ab2c3dbf31;hpb=19bea9573cb7d5728fe91d6a949ca8303dc78100;p=sbcl.git diff --git a/src/code/target-thread.lisp b/src/code/target-thread.lisp index 547ee99..61ea1af 100644 --- a/src/code/target-thread.lisp +++ b/src/code/target-thread.lisp @@ -67,6 +67,8 @@ in future versions." (defvar *all-threads* ()) (defvar *all-threads-lock* (make-mutex :name "all threads lock")) +(defvar *default-alloc-signal* nil) + (defmacro with-all-threads-lock (&body body) `(with-system-mutex (*all-threads-lock*) ,@body)) @@ -712,6 +714,8 @@ around and can be retrieved by JOIN-THREAD." (sb!impl::*zap-array-data-temp* empty) (sb!impl::*internal-symbol-output-fun* nil) (sb!impl::*descriptor-handlers* nil)) ; serve-event + ;; Binding from C + (setf sb!vm:*alloc-signal* *default-alloc-signal*) (setf (thread-os-thread thread) (current-thread-os-thread)) (with-mutex ((thread-result-lock thread)) (with-all-threads-lock