Joo, kokemusta on Windows 3.0 ja Windows 3.1 mikrokivikaudelta blue screeneistä, ja yksiajo-järjestelmä Mikkiksen Disk Operating Systemsin kaatumisesta, kun Bill Gates tajusi ohjelmoida käyttöjärjestelmän, ja teki lisenssointibisnekset IBM the Evil Guys -tietokonevalmistajan kanssa.
Toi muistin hallinta on juuri yksi niistä asioista itsekin C-ohjelmointiin perehtyneenä, mikä tekee eron taitavan, tai masterbrain C/C++-ohjelmoijan ja vähemmän hyvän ohjelmoijan välillä, jotka sisältävät kaikki niiden ohjelmoijien joukot, joiden sovellukset joko toimivat, toimivat paremmin, tai kaatuvat aika ajoin.
Onhan se noissa roskienkeruu-prosessin omaavissa kielissä jotain tekemistä koodaajalla sen muistin käytön suhteen, joskaan ei niin kriittistä, että ohjelma kaatuisi. Esimerkiksi jos ohjelmoi Javalla, mainitsen nyt Javan, kun siitä on eniten kokemusta koulutuksen osalta, ja siinähän on tuo Garbage Colletor -mekanismi, jota Javan Virtuaalikone ajaa taustalla, niin jos ohjelmoi jotain sellaista ohjelmaa, missä attribuuttina määriteltynä ja alustettuna esimerkiksi kokonaisluku-taulukko, johon tallennetaan kansalaisen ikä ja kengännumero, ja alustusvaiheessa jos varaa taulukolle enemmän tilaa, kuin tuon kahden alkion verran. niin koodaaja minimoidessaan alustusvaiheessa muistinvarauksen, jos ohjelma on laaja, ohjelma voi toimia joissain tapauksissa sujuvammin kun ei ole muistia tuhlailtu, tai roskienkeruu ei tee 100% suoritusajasta taustaprosessina aktiivisesti töitä, vaikka se siellä 100% ajasta onkin käynnissä.
En muista, onko C# -kielessä Garbage Collector, mutta tosiaan, kun "nm" -mainitsit, C ja C++ muistin käyttö on tosiaan ohjelmoijan harteilla, ja sitten helposti laajoissa kokonaisuuksissa voi saada päänsäryn, tai pahimmassa tapauksessa ohjelma kaatuu. On niitä Amerikassa avaruuslentojakin, joihin on investoitu kymmeniä miljardeja, kaatunut ohjelmistovirheen takia alkumetreillä.