Just as a heads up, I was able to narrow down the error and created a bug report: https://bugreports.qt-project.org/browse/QTBUG-29246
-Christian Am 21.01.2013 16:13, schrieb Christian Schneider: > > > On 01/21/13 15:31, Tony Rietwyk wrote: >> >>> Sent: Monday, 21 January 2013 11:32 PM >>> >>> Hi all. >>> >>> I have written a multi-threaded program (Qt 4.8.3) that executes QtScript >>> code in multiple threads, each thread with its own QScriptEngine. The >> script >>> code is wrapped in QScriptProgram object. >>> >>> Is the same QScriptProgram object supposed to be usable in multiple script >>> engines concurrently? If the answer is yes, I think I found a bug, because >> it >>> seems that this is not the case. (I'm happy to file a bug report then). If >> the >>> answer is no, the API documentation of QScriptProgram and QScriptEngine is >>> misleading and should be updated. >>> >>> To find the root cause for the problem, I tried to analyze the threads >> using >>> Helgrind, and it spits out a lot of errors like the following: >>> http://img145.imageshack.us/img145/9094/helgrind.png >>> >>> This seems to be consistent with what I see in the debugger: When my >>> application crashes, at least one of the threads almost always is in the >> control >>> path of some JIT-related functions of the JS engine. >>> >>> Any thoughts would be welcome. >>> >>> -Christian >> >> Hi, >> >> I don't see anything in the 4.8.4 docs to suggest they can be shared between >> threads. Even though they might be executing the same program script, I >> think you'll need to create a separate one for each thread. >> >> Tony > > Hi Tony. > > You are right, the docs don't explicitly state "QScriptProgram may be > shared". However, QScriptEngine::evaluate() takes a constant reference > to the QScriptProgram as an argument, so I was under the impression that > it is used read-only and can thus be shared among multiple threads > (that's what I meant with "misleading docs" in my first post). > > Anyway, thanks for your answer. > > -Christian > > > > _______________________________________________ > Interest mailing list > [email protected] > http://lists.qt-project.org/mailman/listinfo/interest >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Interest mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/interest
