Main Archive Specials Wiki | FAQ Links Submit Forum

Nonblocking multiprocessor/multithread algorithms in C++

Type : queue, stack, garbage collection, memory allocation, templates for atomic algorithms and types
References : Posted by joshscholar[AT]yahoo[DOT]com
Linked file : ATOMIC.H

Notes :
see linked file...


Added on : 10/01/08 by eigamx[ AT ]xhanmailx[ DOT ]net
Comment :
This code has a problem with operation exceeding 4G times.  If you do more then 4G of Put and Get with the MPQueue, "AtomicUInt & Index(int i) { return data[i & (len-1)];} will cause BUG.
Modular operation with length of 2^n is OK, but not for other numbers.
My email does not have any "x" letters.

Added on : 23/05/11 by kujawa at cs dot ucf dot edu
Comment :
In MPCountStack::PopElement, what's to prevent another thread from deleting was.Value().ptr between assigning was and reading was.Value().ptr->next?

Add your own comment
Comments are displayed in fixed width, no HTML code allowed!


Are you human?

Site created and maintained by Bram
Graphic design by line.out | Server sponsered by fxpansion