This is a discussion on Q re X architecture: trying better understand possible reasons why one iwndow stops updating - Xwindows ; We have a 3rd party production application x-client which displays data in multiple windows on an x-server. When data is sent at a "high" rate to one of the windows there is a certain tendency for the data to stop ...
We have a 3rd party production application x-client which displays data in
multiple windows on an x-server.
When data is sent at a "high" rate to one of the windows there is a certain
tendency for the data to stop displaying in that window; we're not yet able to
reproduce this in our test environment.
We're trying to understand where the problem might lie.
Other windows from the same x-client continue to update.
When data is not displaying moving the window more or less off the
screenand then back on some times:
- causes data in window to start displaying again;
- (or) data does not start displaying again and the the contents
of the window do not "refresh" (the inside of the window is blank).
When display *does* resume, data displayed appears to be current data
even if minutes since data was displayed,
The client application appears to continue functioning normally (including
receiving data from external source and then outputting data to the
x-server?). That is, application does not appear to be "backing up" or
Looking at a sniffer capture shows that the tcp connection from the client
to the server continues to function (sending data to other windows).
The problem occurs both with an x-emulator running on a PC and
with an actual X-Terminal.
I know little about how the application actually uses X other than that Motif
is being used.
I'm also not at all familiar with what I would call the architecture of an
X-Client application using all the X libraries & etc.
Some of my questions:
1. From the clues above: any suggestions as to what part of the total system
might be mal-functioning ?
application itself ? problem in X-client libraries ? other ?
2. What is the basic operation of an X-client with respect to "refreshing"
a window ?
Is this by a callback to the actual application code ?
or: does the X stuff keep a "copy" of the contents of the window
to use for refreshing as needed ?
If a window is partially or fully obscured where is the decision
made to not paint that part of the window ?
X-client library stuff ?
actual application code ?