In computer programming, the dispose pattern is a design pattern which is used to handle resource cleanup in runtime environments that use automatic garbage collection. The fundamental problem that the dispose pattern aims to solve is that, because objects in a garbage-collected environment have finalizers rather than destructors, there is no guarantee that an object will be destroyed at any deterministic point in time. The dispose pattern works around this by giving an object a method (usually called Dispose or similar) which frees any resources the object is holding onto.
Many garbage-collected languages offer language constructs to avoid having to call the dispose method explicitly in many situations. These language constructs leads to results similar to what is obtained with the Resource Acquisition Is Initialization (RAII) idiom in languages with deterministic memory management (like e.g. C++).
Read more about Dispose Pattern: Motivation, Language Constructs
Famous quotes containing the words dispose and/or pattern:
“It is remarkable, but on the whole, perhaps, not to be lamented, that the world is so unkind to a new book. Any distinguished traveler who comes to our shores is likely to get more dinners and speeches of welcome than he can well dispose of, but the best books, if noticed at all, meet with coldness and suspicion, or, what is worse, gratuitous, off-hand criticism.”
—Henry David Thoreau (18171862)
“It may be tempting to focus on the fact that, even among those who support equality, mens involvement as fathers remains a far distance from what most women want and most children need. Yet it is also important to acknowledge how far and how fast many men have moved towards a pattern that not long ago virtually all men considered anathema.”
—Katherine Gerson (20th century)