Learn R Programming

R.oo (version 1.7.5)

gc.Object: Clear cached fields and calls the garbage collector

Description

Clear cached fields and calls the garbage collector. Cached fields are set to NULL when cleared.

Usage

## S3 method for class 'Object':
gc(this, ...)

Arguments

...
Not used.

Value

  • Returns what gc() returns.

See Also

To clear the fields without calling the garbage collector, see *clearCache(). For more information see Object.

Examples

Run this code
setConstructorS3("CachedObject", function(...) {
  extend(Object(), "CachedObject",
    ...
  )
})

setMethodS3("as.character", "CachedObject", function(this, ...) {
  s <- NextMethod("as.character", this, ...)
  s <- sprintf("%s. RAM: %.2fkb.", s, objectSize(this)/1024)
  s
})

obj <- CachedObject(a=1, b=1:10^5, "cached:c"=1:10^6)
print(ll(obj))
print(obj) # [1] "CachedObject: 0x02466E28. RAM: 4297.16kb."

gc(obj)         # Clear all cached fields
print(ll(obj))
print(obj) # [1] "CachedObject: 0x02466E28. RAM: 391.05kb."

Run the code above in your browser using DataLab