X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=doc%2Fmanual%2Fthreading.texinfo;h=21d27560ced2d921352736c3d9c441959ecfe77d;hb=219cc40793f9c82fb943b29a1846f898f4f9de1e;hp=b51ba34a902baa9477dd2e5a1e8d661680f06b4b;hpb=d84e1dbbbf11e76663cfaa0b1a5b7591f39f01b6;p=sbcl.git diff --git a/doc/manual/threading.texinfo b/doc/manual/threading.texinfo index b51ba34..21d2756 100644 --- a/doc/manual/threading.texinfo +++ b/doc/manual/threading.texinfo @@ -107,6 +107,16 @@ useful for implementing lockless algorithms. @include macro-sb-ext-atomic-incf.texinfo @include macro-sb-ext-compare-and-swap.texinfo +@unnumberedsubsec CAS Protocol + +Our @code{compare-and-swap} is user-extensible using a protocol similar +to @code{setf}: + +@include macro-sb-ext-cas.texinfo +@include macro-sb-ext-define-cas-expander.texinfo +@include macro-sb-ext-defcas.texinfo +@include fun-sb-ext-get-cas-expansion.texinfo + @node Mutex Support @comment node-name, next, previous, up @section Mutex Support @@ -142,25 +152,32 @@ if you want a bounded wait. @include fun-sb-thread-make-mutex.texinfo @include fun-sb-thread-mutex-name.texinfo @include fun-sb-thread-mutex-value.texinfo -@include fun-sb-thread-get-mutex.texinfo +@include fun-sb-thread-grab-mutex.texinfo @include fun-sb-thread-release-mutex.texinfo @include macro-sb-thread-with-mutex.texinfo @include macro-sb-thread-with-recursive-lock.texinfo +@include fun-sb-thread-get-mutex.texinfo @node Semaphores @comment node-name, next, previous, up @section Semaphores -described here should be considered -experimental, subject to API changes without notice. +Semaphores are among other things useful for keeping track of a +countable resource, eg. messages in a queue, and sleep when the +resource is exhausted. @include struct-sb-thread-semaphore.texinfo @include fun-sb-thread-make-semaphore.texinfo -@include fun-sb-thread-semaphore-count.texinfo -@include fun-sb-thread-semaphore-name.texinfo @include fun-sb-thread-signal-semaphore.texinfo -@include fun-sb-thread-try-semaphore.texinfo @include fun-sb-thread-wait-on-semaphore.texinfo +@include fun-sb-thread-try-semaphore.texinfo +@include fun-sb-thread-semaphore-count.texinfo +@include fun-sb-thread-semaphore-name.texinfo + +@include struct-sb-thread-semaphore-notification.texinfo +@include fun-sb-thread-make-semaphore-notification.texinfo +@include fun-sb-thread-semaphore-notification-status.texinfo +@include fun-sb-thread-clear-semaphore-notification.texinfo @node Waitqueue/condition variables @comment node-name, next, previous, up