Does Your JavaScript Leak? Introducing Google Leak Finder
Written by Ian Elliot   
Friday, 10 August 2012

Google has just released a memory leak finder for JavaScript. It is open source and ready to work for you.

The introduction to the Leak Finder page on Google Code says:

"In JavaScript you cannot have "memory leaks" in the traditional sense, but you can have objects which are unintentionally kept alive and which in turn keep alive other objects, e.g., large parts of DOM."

Which will ring a little hollow to anyone who remembers the way that closures would leak memory like seives in the early days. But apart from such JavaScript engine failures, the statement is correct in theory. In a garbage-collected language you can't have memory leaks because you mismanaged the memory pool.; there is no memory pool and objects are garbage-collected as soon are there are no references to them.

 

googleleaksmall

Click for larger image - opens in new window

Of course, you can forget to dereference objects that you are using, and this isn't really a memory leak just an inefficiency. The new tool will help you find such problems, but it comes with a cost. You have to modify your code to make use of goog.Disposable and explicity call dispose() on an object before you free up the reference. It also works with closure by default, but you can apparently use it with other libraries.

It also only works with Chrome and isn't exactly effort-free to install.

What all this says to me is that we are still poorly served in terms of JavaScript tools. Yes, it's nice to have a free open source memory leak finder, even if it does force you to use the disposable pattern. What is less acceptable is that this isn't integrated into an easy-to-use integrated debugger.

There are a lot of JavaScript programmers searching for their ideal IDE, but there are even more who don't even know that things don't have to be like this and so aren't even aware that they are missing an easy-to-use IDE.

 

googleleaktap

More Information

Leak finder

Related Articles

JavaScript The Evil Parts - You Can't Maintain It.

Mozilla Gladius Game Engine Reaches V0.1

Pit - F# to JavaScript Compiler

JavaScript debugging tools move forward

 

raspberry pi books

 

Comments




or email your comment to: comments@i-programmer.info

To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin,  or sign up for our weekly newsletter.

 

Banner


Apache Superset 4 Updates Reports
15/04/2024

Apache Superset 4 has been released with improvements to the reporting module and redesigned alerts. Superset is a business intelligence web application. It is open source, provides data exploration a [ ... ]



AWS Lambda Upgraded To .NET8 Runtime
25/03/2024

An upgrade of AWS Lambda to the .NET version 8 runtime
brings major improvements to the platform.


More News

Last Updated ( Friday, 10 August 2012 )