[Rd] re-throwing an interrupt condition

luke-tier@ey m@ili@g off uiow@@edu luke-tier@ey m@ili@g off uiow@@edu
Sat Jul 28 19:43:37 CEST 2018


On Sat, 28 Jul 2018, Gábor Csárdi wrote:

> I don't want to return a value, I want to interrupt the computation,
> that's why I need to re-throw .
> But before getting back to the user I want to run some cleanup code.

If it is just cleanup you want then a finally clause or on.exit should
do, and will cover all form of non-local transfer of control.

Best,

luke

>
> G.
> On Sat, Jul 28, 2018 at 5:59 PM Iñaki Úcar <i.ucar86 using gmail.com> wrote:
>>
>> El sáb., 28 jul. 2018 a las 18:30, Gábor Csárdi
>> (<csardi.gabor using gmail.com>) escribió:
>>>
>>> Anyone knows a way to re-throw a caught interrupt condition, so that
>>> it behaves just like the original one? I.e. no error message is
>>> printed, but the execution is stopped of course. With just calling
>>> stop in the error handler, it prints the error message, or, if there
>>> is no error message (like in the original interrupt condition),
>>> another error happens.
>>>
>>> tryCatch(Sys.sleep(100), interrupt = function(e) {  e$message <-
>>> "interrupted"; stop(e) } )
>>> <press CTRL + C / ESC here>
>>> #> Error: interrupted
>>>
>>> tryCatch(Sys.sleep(100), interrupt = function(e) stop(e))
>>> <press CTRL + C / ESC here>
>>> #> Error in stop(e) : bad error message
>>
>> Sorry, I probably misunderstood your intention, but... simply by not
>> calling stop at all? This is what I see:
>>
>>> tryCatch(Sys.sleep(100), interrupt = function(e) do_something <<- 1)
>> <press CTRL + C / ESC here>
>> ^C>
>>> do_something
>> [1] 1
>>
>> Iñaki
>
> ______________________________________________
> R-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

-- 
Luke Tierney
Ralph E. Wareham Professor of Mathematical Sciences
University of Iowa                  Phone:             319-335-3386
Department of Statistics and        Fax:               319-335-3017
    Actuarial Science
241 Schaeffer Hall                  email:   luke-tierney using uiowa.edu
Iowa City, IA 52242                 WWW:  http://www.stat.uiowa.edu


More information about the R-devel mailing list