[GiNaC-list] multithreading
Kraus Philipp
philipp.kraus at flashpixx.de
Mon Aug 23 13:18:11 CEST 2010
Hello,
I have declared a GiNaC::parser l_parser; in a class method which is
called in a multithread.
If I show valgrind report I see:
==1084== Possible data race during write of size 1 at 0x1f06e4 by
thread #3
==1084== at 0x1B30F6:
std::string::_Rep::_M_set_length_and_sharable(unsigned long) (in /usr/
lib/libstdc++.6.0.4.dylib)
==1084== by 0x1B39FB: std::string::_M_mutate(unsigned long,
unsigned long, unsigned long) (in /usr/lib/libstdc++.6.0.4.dylib)
==1084== by 0x1B3A43: std::string::_M_replace_safe(unsigned long,
unsigned long, char const*, unsigned long) (in /usr/lib/libstdc++.
6.0.4.dylib)
==1084== by 0x1B3AE7: std::string::assign(char const*, unsigned
long) (in /usr/lib/libstdc++.6.0.4.dylib)
==1084== by 0x115D139: GiNaC::lexer::lexer(std::istream*,
std::ostream*, std::ostream*) (in /Developer/opt/Ginac/1.5.8/lib/
libginac-1.5.0.dylib)
==1084== by 0x1157CC2: GiNaC::parser::parser(std::map<std::string,
GiNaC::ex, std::less<std::string>,
std::allocator<std::pair<std::string const, GiNaC::ex> > > const&,
bool, std::map<std::pair<std::string, unsigned long>, GiNaC::ex (*)
(std::vector<GiNaC::ex, std::allocator<GiNaC::ex> > const&),
std::less<std::pair<std::string, unsigned long> >,
std::allocator<std::pair<std::pair<std::string, unsigned long> const,
GiNaC::ex (*)(std::vector<GiNaC::ex, std::allocator<GiNaC::ex> >
const&)> > > const&) (in /Developer/opt/Ginac/1.5.8/lib/
libginac-1.5.0.dylib)
When will be ginac thread safe and is there such a thing?
Thx
Phil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cebix.net/pipermail/ginac-list/attachments/20100823/98aabe66/attachment.htm>
More information about the GiNaC-list
mailing list