emacs-devel
[Top][All Lists]
Advanced

[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)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]