Garbage Collection (computer Science)

Garbage Collection (computer Science)

In computer science, garbage collection (GC) is a form of automatic memory management. The garbage collector, or just collector, attempts to reclaim garbage, or memory occupied by objects that are no longer in use by the program. Garbage collection was invented by John McCarthy around 1959 to solve problems in Lisp.

Garbage collection is often portrayed as the opposite of manual memory management, which requires the programmer to specify which objects to deallocate and return to the memory system. However, many systems use a combination of approaches, including other techniques such as stack allocation and region inference.

Resources other than memory, such as network sockets, database handles, user interaction windows, and file and device descriptors, are not typically handled by garbage collection. Methods used to manage such resources, particularly destructors, may suffice to manage memory as well, leaving no need for GC. Some GC systems allow such other resources to be associated with a region of memory that, when collected, causes the other resource to be reclaimed; this is called finalization. Finalization may introduce complications limiting its usability, such as intolerable latency between disuse and reclaim of especially limited resources, or a lack of control over which thread performs the work of reclaiming.

Read more about Garbage Collection (computer Science):  Principles, Tracing Garbage Collectors, Reference Counting, Escape Analysis, Compile-time, Availability, Limited Environments

Famous quotes containing the words garbage and/or collection:

    But could a dream send up through onion fumes
    Its white and violet, fight with fried potatoes
    And yesterday’s garbage ripening in the hall,
    Flutter, or sing an aria down these rooms
    Even if we were willing to let it in,
    Gwendolyn Brooks (b. 1917)

    Our society is not a community, but merely a collection of isolated family units.
    Valerie Solanas (b. 1940)