- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Destructors and Garbage Collection in Perl
If you have programmed using object oriented programming before, then you will be aware of the need to create a destructor to free the memory allocated to the object when you have finished using it. Perl does this automatically for you as soon as the object goes out of scope.
In case you want to implement your destructor, which should take care of closing files or doing some extra processing then you need to define a special method called DESTROY. This method will be called on the object just before Perl frees the memory allocated to it. In all other respects, the DESTROY method is just like any other method, and you can implement whatever logic you want inside this method.
A destructor method is simply a member function (subroutine) named DESTROY, which will be called automatically in following cases −
- When the object reference's variable goes out of scope.
- When the object reference's variable is undef-ed.
- When the script terminates
- When the perl interpreter terminates
For Example, you can simply put the following method DESTROY in your class −
package MyClass; ... sub DESTROY { print "MyClass::DESTROY called\n"; }
- Related Articles
- Garbage collection in Java
- Garbage Collection in Python
- Java Garbage collection
- Garbage collection(GC) in JavaScript?
- Destroying Objects (Garbage Collection) in Python
- What is garbage collection in C#?
- What is JavaScript garbage collection?
- How to force garbage collection in C#?
- How does garbage collection work in Python?
- Using the finalize() method in Java Garbage Collection
- How does Garbage Collection work in Lua Programming?
- Explain in detail about Reference-counting garbage collection in JavaScript?
- When are python objects candidates for garbage collection?
- How can we call garbage collection (GC) explicitly in Java?
- When will be an object eligible for garbage collection?
