Ignore:
Timestamp:
01/17/07 05:06:13 (18 years ago)
Author:
psmith
Message:

yarpc work, saving...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified branches/home/psmith/restructure/src/compat/concurrent-queue.lisp

    r39 r40  
    5252       nil))
    5353
    54 
    55 (defmethod take ((queue concurrent-queue))
     54;Do an (optionally blocking) remove of the element at the head of this queue
     55(defmethod take ((queue concurrent-queue) &key (blocking-call t))
    5656  (sb-thread:with-mutex ((buffer-lock queue))
    5757    ;if its there, pop it
    5858    (let ((ret (pop-elt (buffer queue) "1sttry")))
    59       (if ret
     59      (if (or ret (not blocking-call))
    6060          ret
    6161          (progn
     
    6363            (pop-elt (buffer queue) "2ndtry"))))))
    6464
    65 
     65;Append the element to the tail of this queue
    6666(defmethod add ((queue concurrent-queue) elt)
    6767  (sb-thread:with-mutex ((buffer-lock queue))
Note: See TracChangeset for help on using the changeset viewer.