[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-gnu-emacs] Frantic window manager
From: |
Gerd Moellmann |
Subject: |
Re: [Bug-gnu-emacs] Frantic window manager |
Date: |
Wed, 20 Sep 2000 23:32:13 +0200 (CEST) |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90 |
John Abbott <abbott@poly.dima.unige.it> writes:
> VERBAL DESCRIPTION:
> According to the "top" program when executing the commands below
> graphical emacs causes my window manager (twm) and X server to consume
> large amounts of CPU while the repeated "C-x e" macro is running.
> The problem does not occur using "emacs -nw" inside an xterm.
>
> TO REPRODUCE PROBLEM:
> Create a file as follows (Unix/Linux shell commands):
> yes "aaaaaa: bbbbbb" | head -100000 > file
>
> In (graphical) emacs visit this file (I used C-x C-f) and
> define a keyboard macro as follows
> C-x (
> M-z :
> C-n
> C-x )
>
> In another window start "top" running.
> Now execute the macro 99999 times:
> M-99999 C-x e
>
> Observe that "top" reports that emacs, the window manager and the X
> server are all using a lot of CPU. The same operations under a
> non-graphical emacs (started with "emacs -nw" in an xterm) result
> in only emacs using CPU, and moreover the total CPU time needed to
> complete the 99999 applications of the macro is considerably less
> than with a graphical emacs.
Thanks for the report, John.
The reason for this is that, in your test case, the zapped string is
repeatedly put in an X cut buffer, which involves quite some X traffic.
I don't know how to avoid that traffic in the general case.
For your specific case, I'd suggest to use M-x replace-regexp, or
write a small Lisp function.