Skip to content
Prev 22032 / 63424 Next

wishlist --- menu entry [Rgui] misc --- stop current computation

On Tue, 19 Sep 2006, Henrik Bengtsson wrote:

            
Only to change the design intention for a particular piece of code. Here 
the design intention was to abort just the current download (which can be 
quite useful if it hangs, and allows other packages in the set to be 
installed).  And that only if the interrupt is handled by R, rather than 
by a process invoked by system(), which is possible behaviour in 
download.packages depending on the options. Although it is hard to break 
this particular loop on RGui (harder than I thought as the progress bar 
shifts focus), it does not seem a common enough problem to try to solve on 
its own, and in particular not to change the design intention.

I took the request to be general, and retrospective: 'I have a computation 
running, and I have now decided I want to stop it completely and return to 
the top level'.  That's a reasonable request, especially to those who 
would like to save earlier work in the session (and on Unix we have 
SIGUSR1 to kill the session and save the workspace).  There is only one 
type of interrupt internally in R, and no way that I know of to override 
code-specific interrupt handling,

To do that it looks like we need different classes of interrupts.  Unix 
has several signals for this purpose, but Windows does not.  It's messy 
(not all Unices are the same), but I have in the past wondered about using 
(some of) SIGINT, SIGKILL, SIGTERM and SIGSTOP to do different things, and 
we could fake something similar under Windows.