On Fri, 2011-11-04 at 13:23 -0400, Paul Davis wrote:
On Fri, Nov 4, 2011 at 1:16 PM, Emanuel Rumpf
<xbran(a)web.de> wrote:
While this is restrictive, in the way you
mention, I think it's a
welcome simplification
( compared to implementing a real-time-capable-linked-list + other
rt-structures ),
if your use-case doesn't require direct calls to the list (for any reason),
then you could request insert/remove/update operations through the
rt-ring-buffer.
you can't perform insert/remove/update operations on a "normal" linked
list in an RT thread.
You can assuming you start with a pointer (or an iterator) to the
relevant node, and have somewhere to toss the garbage.
Intrusive linked lists are particularly nice for realtime they avoid the
need to allocate to insert into the list. Thread-safe insert (prepend)
is easy as well, if it's singly linked.
-dr