;; FUNCTION until the other is called, from when it does nothing.
(let ((mutex (sb!thread:make-mutex))
(cancelled-p nil))
- #!-sb-thread
- (declare (ignore mutex))
(list
#'(lambda ()
(sb!thread:with-recursive-lock (mutex)
(defmacro with-scheduler-lock ((&optional) &body body)
;; don't let the SIGALRM handler mess things up
- `(sb!sys:without-interrupts
- (sb!thread:with-mutex (*scheduler-lock*)
- ,@body)))
+ `(sb!thread::call-with-system-mutex (lambda () ,@body) *scheduler-lock*))
(defun under-scheduler-lock-p ()
#!-sb-thread