Memory Leaks Suck
-
Not only no, but HELL no. I'd rather have to fix 100 memory leaks than use any of those pieces of shit... ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
John Simmons / outlaw programmer wrote: I'd rather have to fix 100 memory leaks than use any of those pieces of shit... But why, John? I remember myself involved in a project with multi-threaded DCOM server. Weeks spent on memory leak fixes. Yes, eventually all leaks were resolved, but was it creative work? I was like a detective hunting for a murderer. Yeah, that was fun in some way, but at that time I was not adding new features to our product, not getting new ideas. I am more and more on .NET now, and what a boost in efficiency! Вагиф Абилов MCP (Visual C++) Oslo, Norway Hex is for sissies. Real men use binary. And the most hardcore types use only zeros - uppercase zeros and lowercase zeros. Tomasz Sowinski
-
And if you have a tool like Rational Purify, they take all of 10 minutes to find. Tim Smith I'm going to patent thought. I have yet to see any prior art.
-
Tim Smith wrote: And if you have a tool like Rational Purify, they take all of 10 minutes to find. 1. Those tools are too "good" to be useful. For example, they can find hundreds of "leaks" in a commercial library such as RogueWave. 2. Even if the leaks reported are true, they can be in third-party software which you can't touch. I know you can use only good third-party software developed with C++, but is it really practical?
Too good to be useful? Don't be silly. They have saved me tons of time. Also, if the memory leak is in a 3rd party application you can't touch, then, well YOU CAN'T TOUCH IT. But at least you know have proof it is in that 3rd party software. Tim Smith I'm going to patent thought. I have yet to see any prior art.
-
Tim Smith wrote: And if you have a tool like Rational Purify, they take all of 10 minutes to find. 1. Those tools are too "good" to be useful. For example, they can find hundreds of "leaks" in a commercial library such as RogueWave. 2. Even if the leaks reported are true, they can be in third-party software which you can't touch. I know you can use only good third-party software developed with C++, but is it really practical?
Black Cat wrote: Even if the leaks reported are true, they can be in third-party software which you can't touch This can be a good thing. I have a printing app that is susceptible to leaks in printer drivers, and I have used Purify logs to prove this to a certain printer manufacturer. Not only did this get my customer off my back, but the manufacturer actually fixed the leak (eventually). Personally I find Purify indispensable. Tools like this and BoundsChecker will easily pay for themselves in the long run.
When I am king, you will be first against the wall.
-
Purify is a good tool, but I'm not able to use it anytime when the application becomes complex. I've got one where Purify sysematically crashes :)
Angels banished from heaven have no choice but to become demons Cowboy Bebop
-
KaЯl wrote: At least with C++ we know where the memory leaks are! Hmm, too illogical for a C++ programmer. If you know where the leaks are, then they should all be fixed by now, no complaint is necessary. ;P
Black Cat wrote: Hmm, too illogical for a C++ programmer Nah, that's correct. Would "We are able to know where the memory leaks are" be better? To remember: to be attentive to Mr/Miss/Mrs Black Cat logic and expression ;P
Angels banished from heaven have no choice but to become demons Cowboy Bebop
-
I had something similar but I reported the problem to Rational and they soon fixed the problem. In fact, I have nothing but praise for Rational Tech Support.
When I am king, you will be first against the wall.
-
Black Cat wrote: Even if the leaks reported are true, they can be in third-party software which you can't touch This can be a good thing. I have a printing app that is susceptible to leaks in printer drivers, and I have used Purify logs to prove this to a certain printer manufacturer. Not only did this get my customer off my back, but the manufacturer actually fixed the leak (eventually). Personally I find Purify indispensable. Tools like this and BoundsChecker will easily pay for themselves in the long run.
When I am king, you will be first against the wall.
Robert Edward Caldecott wrote: Not only did this get my customer off my back, but the manufacturer actually fixed the leak (eventually). It must not have been an HP printer. HP only supports their printers for one day, and then they release a new model, dropping support for their "legacy" hardware in process... ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
John Simmons / outlaw programmer wrote: I'd rather have to fix 100 memory leaks than use any of those pieces of shit... But why, John? I remember myself involved in a project with multi-threaded DCOM server. Weeks spent on memory leak fixes. Yes, eventually all leaks were resolved, but was it creative work? I was like a detective hunting for a murderer. Yeah, that was fun in some way, but at that time I was not adding new features to our product, not getting new ideas. I am more and more on .NET now, and what a boost in efficiency! Вагиф Абилов MCP (Visual C++) Oslo, Norway Hex is for sissies. Real men use binary. And the most hardcore types use only zeros - uppercase zeros and lowercase zeros. Tomasz Sowinski
Vagif Abilov wrote: But why, John? VB - You gotta be kidding me. I actually have to tell you *why* I wouldn't use VB? Java - Because of javascript. Anything that has a scripting version has gotta be as big of a piece of shit as the scripting version. Besides, it's slower than a segway... .NET - Microsoft proprietary bullshit. I wouldn't write a "managed" C++ app on a bet (unless it involves my current employment). Can you say "VB wrapped in C++"? ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
Too good to be useful? Don't be silly. They have saved me tons of time. Also, if the memory leak is in a 3rd party application you can't touch, then, well YOU CAN'T TOUCH IT. But at least you know have proof it is in that 3rd party software. Tim Smith I'm going to patent thought. I have yet to see any prior art.
Tim Smith wrote: Too good to be useful? Don't be silly. They have saved me tons of time. So, you are in favor of letting the technolog handle the memory-leak problem, right? Now, comparing the following two options: 1. Write a C++ app that has a lot of memory leaks, and then buy a tool like Purify to find the leaks and plug them. 2. Write a .NET app that is impossible to have a memory leak. Nah, only an idiot will choose 2, it's too damn easy! ;P
-
John Simmons / outlaw programmer wrote: Memory Leaks Suck Is any of the following looking more attractive to you today? .NET, Java, VB ;P
A decent shared pointer class can prevent weeks of pain and anguish, try boost::shared_ptr and keep your nassty C#. Cyclic IUnknown::AddRef()'s, now they really suck. Ryan
They read good books, and quote, but never learn a language other than the scream of rocket-burn. Our straighter talk is drowned but ironclad; elections, money, empire, oil and Dad.
-
Robert Edward Caldecott wrote: Not only did this get my customer off my back, but the manufacturer actually fixed the leak (eventually). It must not have been an HP printer. HP only supports their printers for one day, and then they release a new model, dropping support for their "legacy" hardware in process... ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
You're right. It wasn't an HP. It was a Lexmark. HP printer drivers are notoriously leaky, and HP support couldn't give a damn. Their idea of testing a printer driver is to print a couple of pages from Word, and if nothing crashes then the driver passes. When the HP4050 first came out back in 1998 it included a driver that leaked ~1MB every 100 pages printed which caused me and my company a whole load of sh*t.
When I am king, you will be first against the wall.
-
Tim Smith wrote: Too good to be useful? Don't be silly. They have saved me tons of time. So, you are in favor of letting the technolog handle the memory-leak problem, right? Now, comparing the following two options: 1. Write a C++ app that has a lot of memory leaks, and then buy a tool like Purify to find the leaks and plug them. 2. Write a .NET app that is impossible to have a memory leak. Nah, only an idiot will choose 2, it's too damn easy! ;P
Or 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing 2. Write a .NET app and just hide in a corner and pretend the memory issue doesn't exist at all -- Help me! I'm turning into a grapefruit!
-
Vagif Abilov wrote: But why, John? VB - You gotta be kidding me. I actually have to tell you *why* I wouldn't use VB? Java - Because of javascript. Anything that has a scripting version has gotta be as big of a piece of shit as the scripting version. Besides, it's slower than a segway... .NET - Microsoft proprietary bullshit. I wouldn't write a "managed" C++ app on a bet (unless it involves my current employment). Can you say "VB wrapped in C++"? ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
OK, I'll explain myself. VB - You gotta be kidding me. I actually have to tell you *why* I wouldn't use VB? No, I didn't mean VB. I'm with about this one :) Java - Because of javascript. I didn't mean Java either. .NET - Microsoft proprietary bullshit. I wouldn't write a "managed" C++ app on a bet (unless it involves my current employment). Can you say "VB wrapped in C++"? No, I don't think C# has anything with VB wrapped in C++. The more I work with C#, the more I'm convinced with its elegancy and efficiency. And they're even working on generics! I've been using STL for some time but still am not able to declare map iterator without syntax error at first attempt. Yes, .NET comes with non-deterministic memory management, but as soon I realized it was managing it well, I let it do it for me. Вагиф Абилов MCP (Visual C++) Oslo, Norway Hex is for sissies. Real men use binary. And the most hardcore types use only zeros - uppercase zeros and lowercase zeros. Tomasz Sowinski
-
At least with C++ we know where the memory leaks are!
Angels banished from heaven have no choice but to become demons Cowboy Bebop
-
At least with C++ we know WHAT memory leaks are! well hell doesn't want you and heaven is full. Tom Waits
-
Or 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing 2. Write a .NET app and just hide in a corner and pretend the memory issue doesn't exist at all -- Help me! I'm turning into a grapefruit!
benjymous wrote: 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing Yes! That's more like a C++ cowboy. I have no argument with people who have so much confidence in them. But don't forget, Mr. Tim Smith isn't so confident, he would rather trust Purify to find all the leaks.
-
At least with C++ we know WHAT memory leaks are! well hell doesn't want you and heaven is full. Tom Waits
-
Hel wrote: At least with C++ we know WHAT memory leaks are! How about: At least with C++ we have memory leaks! :laugh: :laugh:
-
benjymous wrote: 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing Yes! That's more like a C++ cowboy. I have no argument with people who have so much confidence in them. But don't forget, Mr. Tim Smith isn't so confident, he would rather trust Purify to find all the leaks.
That's just silly. Which would you trust more: Developer one who says "Yes, my code hasn't got any memory leaks. I know because I'm a good programmer, and I wouldn't make mistakes like that" or Developer two who says "Yes, my code hasn't got any memory leaks, because I rigourously tested it with a wide range of tools" -- Help me! I'm turning into a grapefruit!