gc                   package:base                   R Documentation

Garbage Collection

Description:

     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').

Usage:

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

Arguments:

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

Details:

     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.

Value:

     `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.

See Also:

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

Examples:

     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)

