From: Egon W. <ewi...@un...> - 2006-11-30 15:03:02
|
On Thursday 30 November 2006 13:47, Thorsten Meinl wrote: > When trying to integrate an SDF parser into our data analysis platform > KNIME, I had problems parsing molecules in parallel. The reason in this > specific case is, that the IsotopeFactory uses a Vector for data that is > read-only. Because a Vector is synchronized the different threads all > block on the Vector which severly slows down the parsing. In such cases > it's much better to use an ArrayList because it is not synchronized. > There may be other classes that cause the same problem. A proposed patch > for the IsotopeFactory is attached. I do not think it really needs synchronization, and I think this is still one of those historic things in the CDK; I believe this code predates the introduction of ArrayList. Anyway, I will apply this patch, and commit if it does not introduce regressions. Actually, I might very well look at that reader.readIsotopes() method too, and have that return a List instead of a Vector too. Egon -- CUBIC blog: http://chem-bla-ics.blogspot.com/ |