die_you_gravy_sucking_pig_dog();

LOL: die_you_gravy_sucking_pig_dog();

Š ādu saiti uzgāju, lasot coding horror rakstu par atmiņas vadību . Vairums jauno un moderno programmēšanas valodu ir atbrīvojušās no “drausmīgās” manuālas atmiņas vadības ar new/delete, malloc/free. Bet problēma drīzāk ir acquire/release šablons, kas joprojām ir sastopams daudzās programmās. Es runāju par kaut ko šādu, kur resource ir fails, pieslēgums pie datubāzes, pavediens:

    resource.acquire();
    try {
        usage code
    } finally {
        resource.release();
    }

Aizmirstā release problēma joprojām ir aktuāla. Tāpēc man liekas, ka lielākais (automātisko) drazu savācēju trūkums ir tāds, ka tie veic tikai atmiņas resursu vadību. 60-ajos gados tas tiešām bija aktuāli, bet mūsdienās pat “Hello world” lasa vairākus konfigurācijas failus, slēdzas pie datubāzes, Web serveriem un šiem resursiem ir tendence izbeigties ātrāk nekā atmiņai. Problēma tiek slēpta, veicot drazas savākšanu biežāk, vairāk un pat paralēli programmas izpildei. Kaut kādi uzlabojumi šajā jomā ir sastopami C# un Ruby ar paredzamu resursu vadību koda bloka ietvaros, bet man arvien vairāk sāk likties, ka atsauču skaitīšana un RAII ir pareizāks risinājums. Tik daudz darba tiek veikts, lai tuvinātos paredzamai resursu atbrīvošanai – varbūt tā bija jādara no paša sākuma?

4 Responses to “die_you_gravy_sucking_pig_dog();”

  1. Omer Ganga says:

    THirdly, NO TAXES on payments in Japan. That’s HUGE. Compared to what, a good 35-40% pay cut for the UFC salaries (in the upper brackets). If anything, QJ would take advantage of the tax nullment, and go ahead and go to K-1 before going to the UFC. Even K-1 would pay more than the UFC.

  2. pdyswy says:

    ptnrfxnbyfhitxyjzbbhajlfirniwh

  3. LCD TV says:

    Wow! Thank you! I always wanted to write in my site something like that. Can I take part of your post to my blog?

  4. CutieAnny91 says:

    good read ;)

Leave a Reply

You must be logged in to post a comment.