On Fri, 11 Mar 2005 23:33:36 +0100, Kim F. Storm <[EMAIL PROTECTED]> wrote: > I don't know the internals of X, but if done properly, the Xserver > updates an internal bitmap and only transfers that to the screen when > flushed by Xflush.
The historical function of Xflush is to flush the queue of requests to the X server (like fflush does for a stream). The actual drawing happens after the xserver gets the requests. The X server almost certainly doesn't do any kind of "duplicate squashing" on the request stream -- it would be far too difficult. I think the main effect of avoiding Xflush would be to avoid some context switches and other latency. So instead of Emacs - X - Emacs - X - EMacs - X, it would be Emacs - Emacs - Emacs - X - X - X. There would probably be _some_ speedup and reduction of flickering, but the user might still perceive a lot of display activity. It's possible that some X implementations use an internal bitmap, and then periodically transfer the contents to the physical display; such implementations may indeed arrange for some sort of coordination with Xflush, but it's not the traditional function (I believe typically such backend buffered display updates are mostly based on time anyway). -Miles -- Do not taunt Happy Fun Ball. _______________________________________________ Emacs-pretest-bug mailing list [email protected] http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug
