Re: std::string bad design????
Peter Dimov wrote:
There is a fundamental difference in expectations here. I do not
expect any state, not even a simple int, to be thread-safe unless I
make it thread-safe;
int x; // not thread-safe
You almost certainly do; I can state that even though you don't explain
your use of "thread safe", an ambiguous term.
For example, you expect that you can operate on x from thread 1 while
thread 2 is operating on another int. (1)
It's also reasonable to expect that two threads can read x
simultaneously. (2)
"Not thread safe" essentially means that you can't use an int in a
multi-threaded program, and we know this to not be true.
Your container (from your description) violates (2) but probably not
(1), even though you describe its level of thread safety as "none". STL
containers obey both (1) and (2) (sometimes referred to as "basic"
thread safety).
Ok then it is thread safe. If you say it is thread it is thread safe,
then I will have to say yes. If you say it is thread unsafe, then I
would have to yes.
Since the term is not mine, I will not try to define what it means. I
will say this instead:
My code will run on Windows and Linux in a multi-threaded application
using the conventional C++ compilers, and I will never have the
problems that have been brought forth in this thread.
-Le Chaud Lapin-
--
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]