Factored locking primitives out to their own implementation-dependend
files. Part of the porting effort to LispWorks.
This commit is contained in:
28
src/cmu-locking.cl
Normal file
28
src/cmu-locking.cl
Normal file
@ -0,0 +1,28 @@
|
||||
;;;; CLASH --- The Common Lisp Adaptable Simple HTTP server
|
||||
;;;; This is copyrighted software. See documentation for terms.
|
||||
;;;;
|
||||
;;;; cmu-locking.cl --- Platform independent locking primitives
|
||||
;;;;
|
||||
;;;; Checkout Tag: $Name$
|
||||
;;;; $Id$
|
||||
|
||||
(in-package :CLASH)
|
||||
|
||||
;;;; %File Description:
|
||||
;;;;
|
||||
;;;;
|
||||
;;;;
|
||||
|
||||
;;; Locking primitives for CMUCL
|
||||
|
||||
(defmacro pop-atomically (place)
|
||||
#+MP
|
||||
`(mp:atomic-pop ,place)
|
||||
#-MP
|
||||
`(pop ,place))
|
||||
|
||||
(defmacro push-atomically (value place)
|
||||
#+MP
|
||||
`(mp:atomic-push ,value ,place)
|
||||
#-MP
|
||||
`(push ,value ,place))
|
||||
Reference in New Issue
Block a user