From: Bruce S. <bas...@un...> - 2003-09-30 15:37:10
|
You're right. It's great that you've put your finger on a problem. I too am seeing programs with gdisplays (graphs) hanging more than any other kind of program, and on Windows as well as Linux, as you say. It is true that most of the multiwindow programs I run involve a graph, so it might be important to play with multiwindow programs that don't involve graphs to see whehter we see it there, too. But now that Jonathan has pointed to a possible problem area, might it be that contention is most likely to happen precisely in a program where we're constantly bouncing back and forth between windows, as is the case where an animation of a system is displayed in one window, and a corresponding graph is updated in another? What do you think, Jonathan? Bruce Sherwood Roger Fearick wrote: > On Mon, 29 Sep 2003, Bruce Sherwood wrote: > > >>Jonathan Brandmeyer explained to me that there is a fundamental problem >>with which I was unaware. Recent versions of the Unix/Linux kernel no >>longer do "recursive" locking/unlocking of resources, something that >>Visual has used. Jonathan has been working on eliminating the deadlocks >>that can now occur and which may well be responsible for what you're >>seeing. He's doing this in his experimental Boost-based version but >>might retrofit the current Visual. This is not a problem on Windows. > > > Hi, > This problem looks like it is related to something I have noticed > on both Linux and Windows (98,2k,XP): gdisplay objects mostly work, > but occasionally they don't. > The result is a frozen window, usually displaying the minimum > axes possible (i.e. the problem seems to lie in the creation of the > window). > In general, related activity in a display window will continue. > I guess that this is related to threading and some deadlock. I've > tried to trace through the code and find whereabouts the stall > is happening, but with little success - the usual problem with an > intermittent fault! However, some tests did seem to suggest that it got > lost between the exit from gdisplay's __init__ and the next call to the > class instance. > One thing is that it does seem worse on machines that are a little tight > on memory. > It is the one thing that does upset students a little with the visual > package, otherwise they seem to like it. > > Roger. > |