[ROOT] gSystem->ProcessEvent() in multithreaded programs

From: Thomas Bretz (tbretz@astro.uni-wuerzburg.de)
Date: Mon Oct 20 2003 - 20:14:28 MEST


Hi all,

I have a loop which (inside the loop) calls gSystem->ProcessEvents(). 
This is to make accessing a TGMainFrame (eg by mouse) possible if I call 
this loop inside a macro. If I now use the same loop in a thread 
precompiled program and call TApplication::Run() in the main thread I 
sometimes get seg-faults.

I guess, this is due to the fact, that running a macro in the 
interpreter makes sure, that the action performed by 
gSystem->ProcessEvents() does not interact with something similar which 
is done in the 'InnerLoop' while in my case both threads may try to 
update the GUI at the same time. What is the prefered solution for this?

Thanks in advance,
Thomas.



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:16 MET