Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re^2: Debugging DESTROY calls in forking application

by stevieb (Canon)
on Mar 11, 2020 at 00:51 UTC ( [id://11114111]=note: print w/replies, xml ) Need Help??


in reply to Re: Debugging DESTROY calls in forking application
in thread Debugging DESTROY calls in forking application

"put try/catch blocks around any "complicated" destructors, silently absorbing any exceptions that might occur. The rationale simply being – that, since you are dying anyway, nobody really cares about you anymore."

What an absolutely backwards, ignorant and absurd thing to do. Your assumption that nobody cares is equally as asinine.

If your destruction routines are that "complicated", fix them! If you're wrapping the destructor of someone else's code, DON'T hide information they may relay. You have no idea what someone is doing in there. What if it's designed to reset system components because if they don't get reset, the system may be damaged permanently after program restart? Yes, I have destructors that do these things.

"It might cause memory leaks but the bottom line is that the thing keeps going."

Wow. "Let's consume memory needlessly and permanently even though it's no longer needed or in use. Letting the program continue is more important than the stability of the system as a whole!".

Dumbfounding.

  • Comment on Re^2: Debugging DESTROY calls in forking application

Replies are listed 'Best First'.
Re^3: Debugging DESTROY calls in forking application
by cavac (Parson) on Mar 11, 2020 at 11:21 UTC

    Yeah, memory leaks is one of the worst class of bugs. If they happen more if the system is busier, this is even worse.

    If, for example, your webserver code leaks memory with every page visited, everything is fine while you don't have much visitors. The first time a news article links to your site everything will halt and catch fire...

    perl -e 'use Crypt::Digest::SHA256 qw[sha256_hex]; print substr(sha256_hex("the Answer To Life, The Universe And Everything"), 6, 2), "\n";'

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11114111]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2024-04-16 18:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found