Apologies for my lack of knowledge, but how can a fifo queue be implemented with just a compare and swap for pointers?
Simon ---------- Forwarded message ---------- From: Glenn Fowler <[email protected]> Date: Wed, Mar 20, 2013 at 4:19 AM Subject: Re: [ast-developers] Signal trap loop behaviour... To: [email protected], [email protected], [email protected] Cc: [email protected] On Wed, 20 Mar 2013 02:13:25 +0100 Roland Mainz wrote: > BTW: I forgot to explain why I suggested a single-linked list as FIFO > queue... the idea is to _not_ disable signals when the siginfo is > processed in the signal callback... instead signals can be received > even while the signal callback is processed... this is safe as long > the insertion into the single-linked list is done using atomic > instructions ([1]). > [1]=Erm... Glenn: (Without digging around) Does ASO have a > compare-and-swap for pointers ? void* asocasptr(void volatile*, void*, void*); and its documented! _______________________________________________ ast-developers mailing list [email protected] http://lists.research.att.com/mailman/listinfo/ast-developers -- Simon _______________________________________________ ast-users mailing list [email protected] http://lists.research.att.com/mailman/listinfo/ast-users
