In case of use GetObject for a singleton by a multi-threading access, sometime there is an exception while execute the instruction
"singletonsInCreation.Remove(name);" in Spring.Objects.Factory.Support.AbstractObjectFacto ry.AfterSingletonCreation because the Remove(string key) of the OrderedDictionary class call the RemoveAt(int index) with the index of the key, but two concurrent Remove could change the index generating an Index out of range inside the RemoveAt.
For now, I have resolved with a lock on singletonsInCreation inside the BeforeSingletonCreation and AfterSingletonCreation.
Bye, bye.
Cristiano.


Reply With Quote
