On 13-12-10 07:16, Patricia Shanahan wrote:
On 12/12/2010 5:48 PM, Peter Firmstone wrote:
Patricia Shanahan wrote:
On 12/3/2010 7:15 AM, Gregg Wonderly wrote:
...
> The important issue in FastList is that it was written with the JDK1.4
> memory model. After moving River to Java 1.5, we'd have the JSR166
work
> and the new, consistent memory model where volatile has a true
meaning.
> However, this code in particular is quite complex as you have
noted, so
> even adjusting to the new memory model could be problematic.


I dont get it. What is the role of FastList. If it is only a very fast concurrent single linked list, with an iterator, i can be implemented much easier.

It i only has a iterator and add,remove operations, only the list stitching needs to be guarded. As long as no garantuees are given in timing relations.

The WeakHashmap role, looks strange. It is used only for a isEmpty() function, and i hope that this is only used for not to add an extra reference. Because when it depends on removal by losing a reference because it has gone weakly reachable, there is no garanteed minimal timing for the isEmpty() = true to catch up. JDK6 has a much directer relation between a reference going out of scope and going weakly then JDK4.

Rambling?

Gr. Sim

--
QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Reply via email to