[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Running two processes rapidly makes Emacs eat 100% CPU on w32
From: |
Slawomir Nowaczyk |
Subject: |
Running two processes rapidly makes Emacs eat 100% CPU on w32 |
Date: |
Thu, 12 Oct 2006 10:44:48 +0200 |
Hello,
I have tested on M$ Windows only, I do not know if the problem also
exists on other systems...
Evaluating the following code
(progn (start-process "" nil "ls") (call-process "ls"))
makes my emacs eat 100% CPU. Emacs is still responsive, I can edit
things etc., but the CPU usage remains extreme. When I try to exit, it
asks whether to kill an active process "ls". If I answer yes, emacs
exits cleanly.
Changing the code to
(progn (start-process "" nil "ls") (sleep-for 0.1) (call-process "ls"))
makes the problem go away (but sleeping for 0.01 is not enough on my
machine).
I have encountered the problem when I tried to upgrade to newest tramp,
which seems to run several processes one after another in order to test
some things (if anyone is interested, the code is in tramp-util.el,
lines 104 to 180 -- at least as of tramp-2.1.7.tar.gz).
I have also seen similar behaviour (which I believe -- and hope -- is
caused by the same bug) with ispell... changing buffers back and forth
rapidly made my emacs, occasionally, start eating 100% CPU as well -- I
now think that the buffers might have been using different dictionaries
and flyspell tried restarting ispell with different arguments too
quickly.
What is the best way to debug such problem? toggle-debug-on-quit is not
helpful, since the emacs itself remains responsive and the traceback it
provides is useless. I do not have C debugger on this machine, although
I might try installing one if that's the only way to go.
In GNU Emacs 22.0.50.1 (i386-msvc-nt5.1.2600)
of 2006-09-27 on FIONA
X server distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-msvc (13.10) --cflags
-IM:/EmacsCVS/libraries/include/'
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: ENG
locale-coding-system: cp1252
default-enable-multibyte-characters: t
--
Best wishes,
Slawomir Nowaczyk
( address@hidden )
Programming: "Bloody instructions which, being taught, return to
plague their inventor" ("Macbeth", Act 1, Scene 7)
- Running two processes rapidly makes Emacs eat 100% CPU on w32,
Slawomir Nowaczyk <=