X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=doc%2Fcds-api.txt;fp=doc%2Fcds-api.txt;h=0000000000000000000000000000000000000000;hp=8896e20944f37f881e61f63e4cb4ea18be1ccf0a;hb=dcb9c05a081e2c8d4fe0250f3700e3efb1200cac;hpb=2fec8f05f010408e989356e6f9d8c1e191ba4dfa diff --git a/doc/cds-api.txt b/doc/cds-api.txt deleted file mode 100644 index 8896e20..0000000 --- a/doc/cds-api.txt +++ /dev/null @@ -1,70 +0,0 @@ -Userspace RCU Concurrent Data Structures (CDS) API -by Mathieu Desnoyers and Paul E. McKenney - - -This document describes briefly the data structures contained with the -userspace RCU library. - -urcu/list.h: - - Doubly-linked list, which requires mutual exclusion on updates - and reads. - -urcu/rculist.h: - - Doubly-linked list, which requires mutual exclusion on updates, - allows RCU read traversals. - -urcu/hlist.h: - - Doubly-linked list, with single pointer list head. Requires - mutual exclusion on updates and reads. Useful for implementing - hash tables. Downside over list.h: lookup of tail in O(n). - -urcu/rcuhlist.h: - - Doubly-linked list, with single pointer list head. Requires - mutual exclusion on updates, allows RCU read traversals. Useful - for implementing hash tables. Downside over rculist.h: lookup of - tail in O(n). - -urcu/wfstack.h: - - Stack with wait-free push and wait-free pop_all. Both blocking - and non-blocking pop and traversal operations are provided. - This stack does _not_ specifically rely on RCU. - Various synchronization techniques can be used to deal with - pop ABA. Those are detailed in the API. - -urcu/wfcqueue.h: - - Concurrent queue with wait-free enqueue. Both blocking and - non-blocking dequeue, splice (move all elements from one queue - to another), and traversal operations are provided. - This queue does _not_ specifically rely on RCU. Mutual exclusion - is used to protect dequeue, splice (from source queue) and - traversal (see API for details). - (note: deprecates urcu/wfqueue.h) - -urcu/lfstack.h: - - Stack with lock-free push, lock-free pop, wait-free pop_all, - wait-free traversal. Various synchronization techniques can be - used to deal with pop ABA. Those are detailed in the API. - This stack does _not_ specifically rely on RCU. - (note: deprecates urcu/rculfstack.h) - -urcu/rculfqueue.h: - - RCU queue with lock-free enqueue, lock-free dequeue. - This queue relies on RCU for existence guarantees. - -urcu/rculfhash.h: - - Lock-Free Resizable RCU Hash Table. RCU used to provide - existance guarantees. Provides scalable updates, and scalable - RCU read-side lookups and traversals. Unique and duplicate keys - are supported. Provides "uniquify add" and "replace add" - operations, along with associated read-side traversal uniqueness - guarantees. Automatic hash table resize based on number of - elements is supported. See the API for more details.