[Rd] Run package code on R shutdown?

Duncan Murdoch murdoch at stats.uwo.ca
Mon Apr 10 15:48:10 CEST 2006


On 4/10/2006 6:16 AM, Prof Brian Ripley wrote:
> On Sun, 9 Apr 2006, Duncan Murdoch wrote:
> 
>> I'm sure I've seen this discussed before, but haven't been able to find
>> it.  I'd like some package code to be run when R is shut down
>> (approximately when a user's .Last function would be run), to clean up
>> properly.  What is the best way to do this?
> 
> The only way I know to do this is to use a finalizer, as we don't run
> .Last.lib on shutdown.  (That's how RODBC does it.)
> 
> Now, as I recall this cannot be done from reg.finalizer, only from the 
> C-level R_RegisterCFinalizerEx, which has an optional argument to ensure 
> that the finalizer is run 'onexit'.   (I have never understood why we have 
> that restriction, nor why reg.finalizer is primitive and not .Internal.)

Thanks!

Duncan Murdoch



More information about the R-devel mailing list