#include "Stroika/Foundation/StroikaPreComp.h"#include <atomic>#include <optional>#include "forward_list.inl"Go to the source code of this file.
Classes | |
| class | Stroika::Foundation::Containers::LockFreeDataStructures::forward_list< T > |
| lock-free, threadsafe singly linked list implementation (patterned after std::forward_list) - INTERNALLY SYNCHRONIZED More... | |
Namespaces | |
| namespace | Stroika::Foundation |
| namespace | Stroika::Foundation::Containers |
| namespace | std |
| STL namespace. | |
Initial implementation copied from (so full credit for algorithms) https://codereview.stackexchange.com/questions/167252/c11-lock-free-collection-similar-to-stdforward-list-follow-up-2 APPENTLY written by https://codereview.stackexchange.com/users/62314/brent All said about license we MIT licence, which is what Stroika uses, so I assume will be OK.
TODO:
Sutters approach is fairly different. Worth considering, as much simpler. He probably showed all I really need - the definition of reference, and how that fits with push_front, pop_front... Could implement both ways with ifdefs?
Definition in file forward_list.h.