gc                   package:base                   R Documentation

_G_a_r_b_a_g_e _C_o_l_l_e_c_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

     A call of `gc' causes a garbage collection to take place. `gcinfo'
     sets a flag so that automatic collection is either silent
     (`verbose=FALSE') or prints memory usage statistics
     (`verbose=TRUE').

_U_s_a_g_e:

     gc(verbose = getOption("verbose"))
     gcinfo(verbose)

_A_r_g_u_m_e_n_t_s:

 verbose: logical; if `TRUE', the garbage collection prints statistics
          about cons cells and the vector heap.

_D_e_t_a_i_l_s:

     A call of `gc' causes a garbage collection to take place. This
     takes place automatically without user intervention, and the
     primary purpose of calling `gc' is for the report on memory usage.

     However, it can be useful to call `gc' after a large object has
     been removed, as this may prompt R to return memory to the
     operating system.

_V_a_l_u_e:

     `gc' returns a matrix with rows `"Ncells"' (cons cells, usually 28
     bytes each on 32-bit systems and 56 bytes on 64-bit systems, and
     `"Vcells"' (vector cells, 8 bytes each), and columns `"used"' and
     `"gc trigger"', each also interpreted in megabytes (rounded up to
     the next 0.1Mb).

     If maxima have been set for either `"Ncells"' or `"Vcells"', a
     fifth column is printed giving the current limits in Mb (with `NA'
     denoting no limit).

     `gcinfo' returns the previous value of the flag.

_S_e_e _A_l_s_o:

     `Memory' on R's memory management and `gctorture' if you are an R
     hacker.

_E_x_a_m_p_l_e_s:

     gc() #- do it now
     gcinfo(TRUE) #-- in the future, show when R does it
     x <- integer(100000); for(i in 1:18) x <- c(x,i)
     gcinfo(verbose = FALSE)#-- don't show it anymore

     gc(TRUE)

