bug 21334 seems to deal with multiple threads accessing the same shared object at the same time. However, the sample code provided here involves separate private objects so there should not be any such issues. If it is not possible to assume that separate threads can access unrelated STL objects at the same time, then this would imply that all STL operations (regardless of the object) must be serialized!
The empty string is the same object really. -- Pinski