X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fvector.lisp;h=db9882c5b9a6d2fe87627bd488ee1e963c38bcba;hb=ee5629ee974ee8ce7a1cb245a99e94f8943ffd90;hp=6a000b4a57c565e7ad9319470ab89885647000f1;hpb=a7a4ca961ef0f587a2549bd9433eef7ddb845ab7;p=sbcl.git diff --git a/src/pcl/vector.lisp b/src/pcl/vector.lisp index 6a000b4..db9882c 100644 --- a/src/pcl/vector.lisp +++ b/src/pcl/vector.lisp @@ -55,11 +55,11 @@ ;;; used. (defvar *pv-tables* (make-hash-table :test 'equal)) -;;; ...and one lock to rule them. Spinlock because for certain (rare) +;;; ...and one lock to rule them. Lock because for certain (rare) ;;; cases this lock might be grabbed in the course of method dispatch ;;; -- and mostly this is already under the *world-lock* (defvar *pv-lock* - (sb-thread::make-spinlock :name "pv table index lock")) + (sb-thread:make-mutex :name "pv table index lock")) (defun intern-pv-table (&key slot-name-lists) (flet ((intern-slot-names (slot-names) @@ -77,7 +77,7 @@ :pv-size (* 2 (reduce #'+ snl :key (lambda (slots) (length (cdr slots)))))))))) - (sb-thread::with-spinlock (*pv-lock*) + (sb-thread:with-mutex (*pv-lock*) (%intern-pv-table (mapcar #'intern-slot-names slot-name-lists))))) (defun use-standard-slot-access-p (class slot-name type)