Hi everybody!

The fast collection classes in the struts framework use a simple strategy to
avoid (expensive?) synchronization. If a collection is to be modified then
first clone it, then modify the clone and finally replace the original with
the modified clone.

The problem is that the execution order of the commands is not guaranteed. A
compiler can decide to first create the clone, then replace the original
with the clone and then modify the original/clone -> bang.

The following article explains the problem more detailed:
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html

--Stefan

-- 
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to