Review: Deleaker - A tool that finds resource leaks

23:57
Wed
14
Jan 2015

Review: Deleaker - A tool that finds resource leaks

Deleaker is a tool for programmers that finds resource leaks in C++ programs. It's commercial, with free trial and unconditional 30 day money back. Here is my review of this tool. I've tested version 3.0.27.0.

Deleaker is installed as a plugin for Visual Studio, any version from 2005 to 2013. It also works with Visual Studio Community 2013, as this new free version also supports plugins. There is also standalone Deleaker application (see below).

The purpose of this tool is to augment debugging of native C++ programs with the ability to list all resources that are allocated at the moment (heap memory, virtual memory, OLE memory, GDI objects, USER objects, handles) and so to detect resource leaks. Here is how it works:

The interface is very simple - it can be learned in just few minutes. You can build your program and start debugging it by hitting F5, Deleaker is enabled automatically. Now just open dedicated panel (menu Deleaker > Deleaker Window) and there press "Take snapshot" button. You don't even have to pause execution, but of course the button works as well when your program is paused at a breakpoint. After few seconds, the panel is populated with a list of currently allocated resources, with the place from which it was allocated shown in first column.

After selecting one, bottom panel displays full call stack. Clicking in this call stacks navigates to the place in the source code where the allocation is specified. Finally, after program exit, the list is filled with resources that were not freed - these are actual leaks!

You can filter the list by module (EXE or DLL file that made the call) and by resource type (memory, GDI objects etc.). There is also a column with size of the resource and "Hit Count" - number of resources that were allocated by that particular place in the code (e.g. inside a loop) and stay allocated at the moment.

"Show full stack" button is a nice feature. Clicking it displays full call stack, while by default, the stack is stripped from entries that don't come from your code, but from system libraries. For example, above my function with the actual allocation instruction, there is MSVCR120D.dll!operator new, then there is MSVCR120D.dll!malloc etc... until ntdll.dll!RtlAllocateHeap. It's good that the program can ignore such call stack entries. It also entirely ignores allocations made by system modules outside of your code.

Unfortunately it does this only by identifying module that the function comes from and not it's name, so it cannot ignore templates, like these from STL containers. Maybe ignoring functions by name specified as wildcard or regular expression would help, e.g. "std::*" or "std\:\:.+" - just like Visual Studio debugger can step over specified functions, as I described in How to Make Visual Studio Debugger not Step Into STL.

You can press "Take snapshot" multiple times and save the snapshots for later view. (They are just numbered, you cannot give them names.) By the way, Deleaker captures F5 key, so even when during debugging session, if the focus is in Deleaker panel, this button doesn't resume your program, but instead refreshes the list of allocations (takes new snapshot). You can also select two snapshots and compare them. Then you see only resources that were allocated in the right snapshot and not in the left, which can indicate a leak that happened during some time of the program execution.

Besides heap memory allocations, the tool can also detect other types of resources, like GDI objects. Unfortunately not all interesting types of resources are covered. For example, an opened file of type FILE* f = fopen(...) is shown as normal memory allocation and opened file of type HANDLE f = CreateFile(...) is not shown at all, but I guess it must be due to some system internals.

I didn't find a single leak in my main home project, so I created a dedicated, simple program to test if it can really find leaks. I also checked that it works with programs compiled in Release configuration as well.

Aside from being a Visual Studio plugin, Deleaker can also work as standalone Windows application.

Overall, I like the program. If its price is not a problem for you or your company, I think it can be very useful in improving quality of developed software. I especially like the fact that it's so easy to learn and use.

Comments (2) | Tags: c++ tools visual studio | Author: Adam Sawicki | Share

Comments

Yeezy Shoes
2016-03-28 04:29:35
http://www.ray-bansunglassessite.net/ Cheap Ray Ban Sunglasses
http://www.nikeoutletfactorystore.com/ Nike Outlet Store
http://www.longchamp--outlet.com/ Longchamp Outlet
http://www.nikeflyknit.org/ Nike Flyknit Sale
http://www.oakleysunglassesoutlet.name/ Oakley Outlet
http://www.oakleyoutletstore.net.co/ Oakley Outlet Online
http://www.tomsoutletstore.org/ Toms Outlet
http://www.ralphlaurenoutletstoreonline.com/ Ralph Lauren Outlet
http://www.katespadeoutletsstore.com/ Kate Spade Outlet
http://www.air-max2015.org/ Air Max 2015
http://www.adidasoutletstore.org/ Adidas Outlet
http://www.yeezyboost350.us.com/ Adidas Yeezy
http://www.nikeoutletsstore.com/ Nike Outlet Store
http://www.yeezyboost.org/ Yeezy Boost 350
http://www.longchampoutletstore.us.com/ longchamp outlet
http://www.katespade-outlet.org/ kate spade outlet
http://www.airmax2016.us.com/ Air Max
http://www.timberland-boots.me.uk/ Timberland Outlet
http://www.raybanoutletsunglasses.net/ Ray Ban Outlet
http://www.burberryoutletstoreonline.org/ Burberry Outlet Online
http://www.adidasyeezyboost350.org/ Adidas Yeezy
http://www.yeezy-shoes.us.com/ Yeezy Shoes
http://www.poloralphlaurenoutlets.us.com/ Polo Ralph Lauren Outlet
wxm
2016-03-29 10:10:21
beautiful www.polo-ralph-lauren.de things to www.rolexwatches-canada.ca read www.rayban-sunglassesoutlet.co.uk more, www.christianlouboutin.org.uk look www.ugg-bootsclearance.com for www.polos-ralphlauren.us.com a www.levisjeans.com.co long www.newbalance-shoes.org time, www.harrods-london.co.uk I www.gucci-outletstore.com felt www.longchamp.com.de closer www.louis-vuitton-australia.com.au to www.guccishoes.com.co reality www.ferragamoshoes.in.net very www.louis--vuitton.org.uk far away, www.tiffany-jewelry.net life is www.p90xworkout.us.com short, www.newoutletonlinemall.com if www.nike-free-run.de put www.chi-flatiron.us.com too much www.adidasshoes.top time www.cheap-oakleyglasses.us.com is spent www.tomsoutletonline.net on www.rolex-watch.me.uk practical www.longchampoutlet.com.co things, www.louboutin.jp.net really www.thomas-sabos.org.uk is a www.coach-purseoutlet.net waste nike.shoesoutlet.us.com of www.swarovski--uk.me.uk life, www.timberlandshoes.net.co but www.nfl-jersey.us.com some www.ugg-boots.ca things, www.bcbg-max-azria.ca but www.canadagooses-2016.com if the www.converse-shoesoutlet.com raw www.abercrombie-kids.us.com flavor, www.burberryonlineshop.de leisure www.prada.com.de goods www.burberrybags-outlet.com for gossip, so www.thomas-sabo.com.de I love www.thenorthface.com.de romantic www.ralphlaurenpolos.in.net dreamer, www.toms-outlets.us.com but www.tiffany-andco.us.com I love www.cheapjerseys.us.org real www.nikefactory.org life.Day www.cheapoakley-sunglasses.com in www.oakleysunglasses-cheap.in.net a www.louisvuitton-outlet.com.co hurry, www.true-religion.com.co took www.lululemon-australia.com.au all www.ray-bansunglasses.net the www.bottegaveneta-bagsoutlet.com joy and www.pradahandbags.net.co sadness, airmax.shoesoutlet.us.com a www.coachblackfriday.com lot www.oakleys-sunglasses.us.com of www.babyliss-pro.us.com things, www.tommyhilfiger.net.co not www.designerhandbagsoutlet.net.co enough www.christianlouboutinshoes.jp.net time to www.rosheruns.us recall, www.tiffanyandco-canada.ca Chaoyang www.barbour-jacketsoutlet.com July, www.maccosmetics.net.co early www.asicsgels.de June www.oakley-outletstore.in.net already covered www.cheapuggboots.us.com confused. www.nike-air-max.ca Season www.montres-pascher.fr removed, www.zxcoachoutlet.com landscape transformation, www.rayban.co.nl the www.ralph-laurenoutlet.ca so-called www.hollisterclothingstore.org forever www.pandorajewelry.top always www.eyeglassframes.in.net far-fetched, www.chanelhandbags.net.in time, www.ralphlaurenonlineshop.de not www.barbour-factory.com to www.ralphlauren-polos.co.uk be www.oakleysunglass-outlet.net squandered, www.michael-korshandbags.org.uk the www.adidas-schuhe-online.de true www.michael-kors-canada-outlet.ca meaning www.polooutlets-store.com of life www.salomon-schuhe.com.de is to enjoy www.abercrombie-fitchsale.com the www.oakleyoutlet-online.us.com good www.vans-shoes.net in www.tommyhilfigeroutlet.in.net the www.nike-air-max.com.de flat, www.tommy-hilfiger.com.de I www.tommy-hilfiger-online-shop.de Dimei fireworks, www.hermesbags.jp.net also www.michaelkors-outlet-online.com.co read www.michael-kors.com.es the www.michaelkors-uk.org.uk leisure, www.coachoutlet-online.com.co with www.converse.com.de a www.bcbg-dresses.com touch www.coco-chanel.com.de of www.louis-vuitton-taschen.com.de ink, www.reebok.com.de painting a www.maccosmetics.gr.com thin www.adidas--canada.ca clear www.replica-watches.com.co Huan, www.gucci-shoes.net look www.bottega-veneta.us.com lush www.abercrombieand-fitch.ca green, www.toryburchsale.com.co covered www.omega-watches.us.com with www.oakley.org.es mottled www.mcmbags.net wall. www.truereligion-outlet.us.org This www.the-northfacejackets.us.com July, www.hollister.us.org I airhuarache.shoesoutlet.us.com kept www.vans-shoes.co.uk the www.swarovski-online-shop.de book's swoosh; this www.ralphlaurenepolo.com July, I www.nike-shoesoutlet.us.com dream www.louisvuittons.com.co in www.michael-kors.net.co Lijiang; www.cheap-jordans.net this www.cheap-nike-shoes.net July, www.longchamphandbagsoutlet.net and www.mmoncler-outlet.com has www.converse.net.co been www.michael-kors-outlet-online.us.org well, www.ghdhair-straighteners.co.uk not www.soccer-shoesoutlet.com made www.nikeskos.dk sad.If www.tomsoutlet-online.com you can www.beatsbydrdre.co.com do www.hollisteronlineshop.com.de if www.mcmhandbags.com.co a www.coach-outletonline.net.co light www.ray--ban.ca breeze www.prada-handbags.com.co right www.cheaprayban.com.co woman, www.michaeljordan.com.de placed www.oakley--sunglasses.com.au in www.basketballshoes.com.co the www.jordanrelease-dates.us.com text soul, www.guccihandbags.net.co written imprint www.airhuarache.co.uk of www.canada-goosesjackets.us.com life, write www.guccioutlet-sale.in.net thin www.hollister-abercrombie.com.se cool www.pandora-charms.org.uk and www.polo-outlets.com.co clear Huan, www.rolex-watches.us.com occasionally www.coachoutletstore.net.co write love, but www.burberry-outlet.net.co never www.tiffany-andco.com.au give www.uhren-shop.com.de love, www.michael-kors-taschen.com.de keep www.longchamp-handbagsoutlet.us.com a www.burberry2016.co.uk clear www.christian-louboutinshoes.com.co gel www.nike-roshe-run.com.es Bay, www.the-north-face.ca look for www.edhardy.us.org a parts www.michaelkors.co.nl of www.abercrombie-and-fitch.us.com the www.nike-air-force.de peace, the joy www.ray-banocchiali.it and www.louis-vuittonoutletcanada.ca sorrow www.rayban.com.de of www.nikefree5.net all www.bebeclothing.in.net his www.nike--freerun.co.uk writings, and text www.poloralphlaurenoutlet.net.co only www.weddingdressesuk.org.uk affair www.burberryoutlet-sale.in.net has www.moncler-outlet.us.org nothing www.replicarolex-watches.us.com to www.ralphslauren-outlet.co.uk do www.nikemercurial.in.net with www.salvatoreferragamo.in.net the www.toms--outlet.com.co other.Morning www.cheapshoes.com.co time, www.michael--kors.us.com with www.lululemoncanada.ca a www.michaelkors.so tranquil and www.tocoachoutlet.com contented www.pradaoutlet.com.co Zen cloud www.uggs-onsale.net water, www.nike-air-max.com.au eyes closed, www.truereligionjeans.net.co the www.montblanc--pens.in.net heart www.tiffany-und-co.de distant www.mk-outlet.us.com exile, www.rayban-sunglasses.us.org Wind www.coach-factoryyoutletonline.net and www.hollister-clothing.in.net Smoke www.supra-shoes.org curl www.cheap-baseballbats.net in www.pandora.com.de the www.lululemonoutlet.gb.net mountains, such as www.raybans-sunglassesoutlet.in.net Dai, www.yoga-pants.ca ups www.katespadeoutlet.gb.net and www.tommy-hilfiger.co.nl downs, www.adidas-superstar.de indeed, www.burberrys-outlet.co.uk like www.toms-shoes.net.co a www.ralphlaurenoutletonline.us.org thread, www.nike-roshe-run.de the www.scarpe-hoganoutlets.it ups www.timberlands-paschere.fr and www.hollisters-canada.ca downs of www.christian-louboutin-shoes.ca life, www.the-northface.com.co with long www.longchamp-bags.us.com Qingyuan www.nikerosherun.us . www.adidas.com.se Flowers www.nike-shoes-canada.ca followed the www.nike-air-max.com.se road, www.thejoreseproject.com facing www.oakleyoutlet.ar.com the www.cheap-raybans.com sun www.mkoutletonline.us.com slowly www.longchamps.us.com forward, www.tomsshoes-outlet.us.com then www.fashionclothes.us.com the www.thenorth-faces.co.uk mind www.nike-tnrequinpascher.fr is www.adidas.org.es calm, www.ralphlauren-polos.com.co quiet www.ugg-australia.com.de as www.pulseras-pandora.com.es the www.uggs.in.net lake, www.nike-rosherun.nl the www.mcm-handbags.org water www.chanel-bags.com.co peach, www.oakley-sunglasses.mex.com flower with supra.shoesoutlet.us.com water, www.new-balance-schuhe.de just like the www.jordan-shoes.com.co fate of www.beats-headphone.com.co this www.airmax-2015.org world, www.abercrombie-hollister.nl do www.horloges-rolex.nl not www.coach-factoryoutlet.net.co ask www.coachhandbags2016.us.com why, www.christian--louboutin.in.net regardless www.juicycoutureoutlet.net.co of www.nikefree-run.org.uk come www.swarovski-crystal.us.com and www.cheap-michaelkors.com go, www.tommy-hilfiger-canada.ca only www.jordanretro.org flowers www.coach-factory.in.net need to remember www.tory-burchshoesoutlet.net Lu www.new-balance.ca Qing, www.nikeair-max.es Yue www.ghd-hairstraightener.net possessor www.handbagsoutlet.net.co of the www.rayban-wayfarer.in.net green www.northfaceoutlet.com.co heart, www.nike-huarache.nl cool www.hermesbirkin-bag.net count. www.michael-kors-australia.com.au Sunlight www.burberrys-outlet2016.com penetration www.swarovskicanada.ca mist, www.airjordans.us alluding www.burberry-handbags2016.in.net on www.juicycouture.com.co the www.nike.org.es lake, www.designer-handbagsoutlet.us.com the www.rosherun.org.uk water www.air-huarache.co.uk green, www.outlet-burberry.net.co clear, www.iphone-cases.net.co sparkling, www.wedding--dresses.ca on www.toryburchoutlet-sale.us.com the www.toms-shoesoutlet.net beach, www.hermes-outlet.com.co there www.truereligion-outlet.com.co are www.replica-handbags.net.co birds www.tnf-jackets.us.com flying www.converse-shoes.net over www.nike-schuhe.com.de from uggaustralia.misblackfriday.com time www.pumashoes.in.net to www.toryburch-sandals.in.net time, www.tiffanyand-co.net.co the sky www.louisvuitton.so blue www.guccishoes.in.net and www.abercrombie-fitchs.us.com empty, www.beatsbydre.com.co with www.uggboots.net.co a www.oakley-sunglasses-canada.ca quiet www.hogan.com.de life www.cheapoakley-sunglasses.in.net after www.marcjacobs.us.com ups www.newbalance-outlet.org and www.retro-jordans.com downs, www.omegarelojes.es this www.oakleys-glasses.us.com time www.michaelkorsoutletonline-sale.us.com the www.ralphlaurenoutletonline.in.net heart www.cheapmichaelkors.us.org is www.uggsoutlet.com.co close www.giuseppe-zanotti.net to nature, www.ugg-boots.us.org without www.michaelkorsoutlet-online.ar.com the www.vans-schuhe.com.de slightest www.eyeglassesonline.us.com ripples, www.calvin-kleins.us.com content with www.kate-spade.gb.net this www.louisvuitton-outlets.us quiet www.raybans.us.org and www.michaelkors.com.se peaceful. www.ralphs-lauren.co.uk An www.jimmy-choos.com end, wins www.air-max.com.de the www.giuseppezanotti.com.co snow www.michael-kors-outlet.us.org lotus, www.nike-airmaxinc.co.uk world clarity, www.uggboots.com.de years www.ralph-lauren.com.au of www.kate-spade.in.net silence, the heart www.pandorajewellery.com.au is www.newbalance.com.es also www.nikestore.com.de safe.Time, very www.ralphlaurenoutlet.us.com long. www.pandora-charms-canada.ca I www.mizuno-running.net know, www.chiflatiron.net.co I www.ralph-laurens.org.uk can www.ugg-uggboots.net stay www.rayban.org.es in www.nikestore.us my www.coco-chanels.us.com mind www.michaelkorsoutlet.ar.com there www.swarovski-australia.com.au are www.beats-by-dre.com.co limitations, www.michael-kors-handbags.us.com not www.rolexwatchesforsale.us.com the www.cheapjerseys.com.co majority, www.marc-jacobs.us.com can www.michael-kors.com.co only www.michaelkorsbags.us.org rely www.asics-outlet.us.com on www.ralphlaurenoutlet-online.us.com these www.tommy-hilfigeroutlet.com words www.christianlouboutinshoesoutlet.org to airmax.misblackfriday.com memory.Time, www.toms-shoes.com.co is www.prada-shoes.com.co very www.airmax-90.org short. www.pumaonline-shop.de I www.burberryoutlet2016.us.com understand, www.louis-vuittonblackfriday.com you www.christianlouboutinoutlet.net.co can never www.instylers.us.com forget www.timberlandbootsoutlet.us.com so www.uggsaustralia.com.co little, www.thenorthfacejackets.net.co so www.insanity-workout.us.com I www.ray-ban-outlet.us.com was www.nike-skor.com.se in www.louisvuitton.jp.net such www.the-northface.net.co a www.burberry-outletstore.net manner so www.ugg-boots-australia.com.au as www.celine-bags.org to www.oakley.com.de leave www.nike-maxfr.com some more.Youth, www.mcm-bags.in.net is very www.woolrich-clearance.com long. www.soccer-shoes.us.com In life, www.uggs.co.nl shiny www.nikefree-run.net people, www.burberry-handbagsoutlet.com.co in www.nike-schoenen.co.nl fact, www.coachoutletstore-online.com.co that www.swarovskijewelry.com.co a figure, how www.longchamp.com.co the www.gucci-taschen-outlet.de passage www.guccishoes-uk.co.uk of www.nikeshoesoutlet.org.uk time, www.nike-air-max.us or www.adidas-superstar.nl the www.valentino-shoesoutlet.us.com whole www.soft-ballbats.com dazzling Love.Youth, www.lauren-ralph.co.uk is www.yoga-pants.net.co very www.ferragamo.com.co short. www.mcmsworldwide.com In www.jimmy-chooshoes.com life, www.nikeair--max.fr flickering www.burberryoutlet-canada.ca days

www.burberry-outletonlinesale.in.net

Post comment

Nick *
Your name or nickname
E-mail
Your contact information (optional, will not be shown)
Text *
Content of your comment
Calculate *
(* - required field)
STAT NO AD [Stat] [Admin] [STAT NO AD] [pub] [Mirror] Copyright © 2004-2017 Adam Sawicki
Copyright © 2004-2017 Adam Sawicki