reg.finalizer              package:base              R Documentation

_F_i_n_a_l_i_z_a_t_i_o_n _o_f _o_b_j_e_c_t_s

_D_e_s_c_r_i_p_t_i_o_n:

     Registers an R{} function to be called upon garbage collection of
     object.

_U_s_a_g_e:

       reg.finalizer(e, f)

_A_r_g_u_m_e_n_t_s:

       e: Object to finalize. Must be environment or external pointer.

       f: Function to call on finalization. Must accept a single
          argument,  which will be the object to finalize.

_V_a_l_u_e:

     NULL.

_N_o_t_e:

     The purpose of this function is mainly to allow objects that 
     refer to external items (a temporary file, say)  to perform
     cleanup actions when they are no  longer referenced from within
     R{}. This only makes sense for objects  that are never copied on
     assignment, hence the restriction to environments  and external
     pointers.

_E_x_a_m_p_l_e_s:

      f <- function(e) print("cleaning....")
      g <- function(x){e<-environment(); reg.finalizer(e,f)}
      g() 
      gc() # trigger cleanup

