On 17-Sep-09, at 3:38 PM, David St-Hilaire wrote:
How about ctrl-C?
Marc
Well I guess it works in the terminal, but not in an emacs buffer... :'(
In emacs it is ctrl-C ctrl-C .
Marc
Afficher les réponses par date
Marc Feeley wrote:
On 17-Sep-09, at 3:38 PM, David St-Hilaire wrote:
How about ctrl-C?
Marc
Well I guess it works in the terminal, but not in an emacs buffer... :'(
In emacs it is ctrl-C ctrl-C .
Marc
It seems to work if there is only the primordial thread running, but after having run:
(let loop ((i 0)) (if (< i 30) (begin (thread-start! (make-thread (lambda () (let loop2 () (thread-sleep! 0.1) (loop2))))) (loop (+ i 1)))))
for example, C-c C-c will not stop top from printing out the threads running. Well anyways, thats whats happening on my laptop.
-- David
On 17-Sep-09, at 4:04 PM, David St-Hilaire wrote:
Marc Feeley wrote:
On 17-Sep-09, at 3:38 PM, David St-Hilaire wrote:
How about ctrl-C?
Marc
Well I guess it works in the terminal, but not in an emacs buffer... :'(
In emacs it is ctrl-C ctrl-C .
Marc
It seems to work if there is only the primordial thread running, but after having run:
(let loop ((i 0)) (if (< i 30) (begin (thread-start! (make-thread (lambda () (let loop2 () (thread-sleep! 0.1) (loop2))))) (loop (+ i 1)))))
for example, C-c C-c will not stop top from printing out the threads running. Well anyways, thats whats happening on my laptop.
A "user-interrupt", which is generated when ctrl-C is typed at the console, will interrupt the currently running thread. If you have many threads, then there is no guarantee that the one that gets interrupted is the one running "top".
It is possible to program something different by redefining the interrupt handler for "user-interrupt". For example this code will change the user interrupt handler so that the processing of the user interrupt is done in the primordial thread regardless of which thread was running at the moment ctrl-C was typed:
(current-user-interrupt-handler (lambda () (thread-interrupt! #1 ##default-user-interrupt-handler)))
If you always run top from the primordial thread, then you should be good.
Marc