12.07.2015 Views

Shared State Concurrency - Common Lisp.net

Shared State Concurrency - Common Lisp.net

Shared State Concurrency - Common Lisp.net

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

(defun enqueue (queue element)(with-lock ((condvar-lock (queue-condvar queue)))(%enqueue queue element)(when (queue-was-empty-p queue)(signal-condvar (queue-condvar queue)))))(defun dequeue (queue)(with-lock ((condvar-lock (queue-condvar queue)))(loop while (queue-empty queue)do (wait-condvar (queue-condvar queue)))(%dequeue queue)))10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!