Skip to content

Commit 539a93f

Browse files
committed
change(docs): Move the trivial type limitation notice to the README
1 parent b4b8c79 commit 539a93f

7 files changed

+3
-12
lines changed

README.md

+3
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ On embedded systems, ```LOCKFREE_CACHE_COHERENT``` should almost always be set a
4343

4444
Additionally, some systems have a non-typical cacheline length (for instance the apple M1/M2 CPUs have a cacheline length of 128 bytes), and ```LOCKFREE_CACHELINE_LENGTH``` should be set accordingly in those cases.
4545

46+
## Known limitations
47+
All of the data structures in `lockfree` are only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
48+
4649
## FAQ
4750
### Why would I use this over locking data structures on a hosted machine?
4851

docs/mpmc/priority_queue.md

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
## When to use the Priority Queue
44
The Priority Queue should be used when there are distinct priorities between elements to be enqueued, for instance different urgency signals between threads or packets of different priorities.
55

6-
> Note: At the moment, the Queue is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
7-
86
## How to use
97
Shown here is an example of typical use:
108
* Initialization

docs/mpmc/queue.md

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
## When to use the Queue
44
The Queue is the simplest data structure in the library, and it should be used when single element operations are dominant. It has the simplest API and lowest overhead per operation.
55

6-
> Note: At the moment, the Queue is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
7-
86
## How to use
97
Shown here is an example of typical use:
108
* Initialization

docs/spsc/bipartite_buf.md

-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ A bipartite buffer should be used everywhere the Ring Buffer is used if you want
77
* To process data inside the buffer without dequeueing it
88
* When operations on data can fail or only some of the data is used
99

10-
> Note: At the moment, the Bipartite Buffer is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
11-
1210
## How to use
1311
Shown here is an example of typical use:
1412
* Initialization

docs/spsc/priority_queue.md

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
## When to use the Priority Queue
44
The Priority Queue should be used when there are distinct priorities between elements to be enqueued, for instance different urgency signals between threads or packets of different priorities.
55

6-
> Note: At the moment, the Queue is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
7-
86
## How to use
97
Shown here is an example of typical use:
108
* Initialization

docs/spsc/queue.md

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
## When to use the Queue
44
Queue is the simplest data structure in the library, and it should be used when single element operations are dominant. It has the simplest API and lowest overhead per operation.
55

6-
> Note: At the moment, the Queue is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
7-
86
## How to use
97
Shown here is an example of typical use:
108
* Initialization

docs/spsc/ring_buf.md

-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
* For byte streams where variably sized packets need to be enqueued but sent `n` bytes at a time
66
* When operations on data can fail or only some of the data is used
77

8-
> Note: At the moment, the Ring Buffer is only meant to be used for [trivial](https://en.cppreference.com/w/cpp/language/classes#Trivial_class) types.
9-
108
## How to use
119
There are three API types that can be used:
1210
* A raw pointer and element count API

0 commit comments

Comments
 (0)