h.essel@gsi.de Hi Valery, thanks for your very informative and helpful comments to the thread topic. Lets recall some facts. At the Fermilab meeting Rene stated in public that threads are supported in current root and that multithread canvas access works. He asked for people to test that and to report errors. So we did. The result was published in roottalk (July, 22) and in the Web where you can find a very detailed report. At that time we had only SMP machines available. The new information now is that some of the observed errors are due to bugs in Linux SMP which we could verify by simple X test programs. To summarize: 1. As we expected from the beginning and as you confirmed, root is not threadsave in general. One reason is object instantiation. 2. The concurrent canvas update from threads works on single CPU machines. On SMP machines it crashes with Linux kernel 2.0. Otto Schaile run our test program and found it crashing on SMP with kernel 2.2.10 and libc-2.0.7, but running with libc-2.1.1. Martin Purschke reported it running on kernel 2.2.2 and libc-2.07. 3. The root timer stops on SMP after some time, but runs on single CPU machines. Of cause we do not intend to run arbitrary root classes in threads. But to use root GUI online it would be very useful to handle the communication with the outside world in dedicated threads which in turn can update GUI widgets. We verified that this concept can work, when the SMP problem is solved. Cheers, Hans
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:38 MET