[Rd] reg.finalizer(..., add=FALSE)?
Henrik Bengtsson
hb at stat.berkeley.edu
Wed Jul 8 02:36:48 CEST 2009
Is it possible to (i) clear or (ii) override already registered
finalizer functions, e.g. reg.finalizer(e, f, add=FALSE) cf.
on.exit(..., add=FALSE)?
Currently:
> env <- new.env()
> reg.finalizer(env, function(...) cat("Finalizer A!\n"))
NULL
> reg.finalizer(env, function(...) cat("Finalizer B!\n"))
NULL
> reg.finalizer(env, function(...) cat("Finalizer C!\n"))
NULL
> gc()
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 115827 3.1 350000 9.4 350000 9.4
Vcells 77109 0.6 786432 6.0 370917 2.9
> rm(env)
> gc()
Finalizer C!
Finalizer B!
Finalizer A!
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 115932 3.1 350000 9.4 350000 9.4
Vcells 77648 0.6 786432 6.0 370917 2.9
I wish to have only finalizer "C" to run.
/Henrik
More information about the R-devel
mailing list