OUString is mutable?
noel at peralex.com
Mon Oct 1 02:40:38 PDT 2012
On 2012-10-01 10:15, Stephan Bergmann wrote:
> Note that the rtl string functionality had originally been designed,
> arguably somewhat naively, after java.lang.String. On the Java
> platform, immutability of String is an important security measure.
> While that argument is irrelevant in a C/C++ context, immutability is
> also an important concept when reasoning about multi-threaded code.
> Therefore, the distinction between OUString and OUStringBuffer IMO
> does make sense after all.
I don't see how the design helps you in a multithreaded context.
If you share an OUString instance between two threads, either thread
could assign to it, replacing it's contents, and invalidating what the
other thread sees.
So it's really not any safer than using an OUStringBuffer.
It just gives the illusion of safety.
More information about the LibreOffice