On Jan 14, 2004, at 2:26 PM, Ed Letifov wrote:
David,
My impression is that the Concurrent* classes add a lot of synchronization overhead. The copy on modify plan I think will prevent concurrent modification exceptions. At this point I'd prefer to add a warning comment and see if anyone gets into trouble, and deal with it then. If I'm missing something, please let me know.
Generally, point is taken. Is the warning you mention about the "stale" iterators?
Sorry I didn't respond earlier... fixing this issue number 3 on my todo list (small tasks this time so I should get to this quickly).
In general I'm trying to avoid all possible dependencies in the kernel package, so we can run on embedded hardware. Besides that, I don't switching to the concurrent collections buys us much. It would help with stale iterators, and I don't see that as a big problem. Most people are used to iterators not being useful for very long so they don't keep them around. The proxies are another problem. Once client code has a reference to a proxy there is nothing we can do other then throw an exception if target mbean goes offline.
This was a good suggestion especially because I don't think any of us considered it. I think that the cost does not justify the benefits, but it was still a great suggestion.
-dain
