Giacomo Pati wrote:
Vadim brought up the idea to contribute the Cocoon Event package replacement (RunnableManager) to Excalibur. Personally, I'm not sure about it as in the end we have the Event package back here in a different form. So, maybe you guys have a look at it at http://svn.apache.org/repos/asf/cocoon/trunk/src/java/org/apache/cocoon/components/thread/ and give us your thoughts about it.
OK, here is my surmizing of what is in that package:
1) It is a thin wrapper around the Doug Lea Concurrent library 2) That makes it pretty close to Java5 java.util.concurrent stuff 3) The LinkedQueue will has race conditions waiting to happen with the size tracking--only use it with one thread at a time. 4) The RunnableManager is a lot of code without one test--it makes me nervous.
For the most part it is a big departure from the Excalibur/D-Haven event packages and it is pretty close to the Doug Lea Concurrent library. I can see some potential issues with synchronization--especially as it relates to tracking queue size.
The RunnableManager is a non-trivial class that might actually be better split up. I highly recommend writing a bunch of test cases with JUnit and Clover until the whole thing is covered by tests. While I know Vadim does good work, it surprised me the number of issues I found in my own code.
--
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
- Rich Cook
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Apache Excalibur Project -- URL: http://excalibur.apache.org/
