> Nu kan det være meget forskelligt det løber tør for, altså hukommelse,
> semaforerer, filer, ......
Nu er det jo sådan, at OS/2 selv deallokerer alle disse ressourcer når
en process terminerer, uanset om den selv eksplicit har deallokeret
ressourcerne eller ej.
Du mener altså ikke at en VDM, hvor i det samme program kører igen og igen
ikke kan lide under dette, altså hvis programmet havde samme fejl under DOS?
Jeg er som du kan læse af resten af mit svar godt klar over at der typisk
vil blive ryddet op efter en process, der hvor det kan lade sig gøre.
Den eneste ressource jeg kender, som OS/2 /ikke/ selv frigiver ved
process-terminering er clip-boardet. Prøv at skrive et program der
åbner clipboardet, og derefter afbryder (eller går ned ved en fejl
under udviklingen) - næste gang man aktiverer en clipboard relateret
funktion får man en busy-cursor der kun forsvinder ved reboot.
I
praksis dog heldigvis ikke noget problem; har aldrig oplevet fejlen
andre steder end under egen udvikling.
Det er jo fordi dette er en sharet resource (formentlig en semafor der
forbliver postet), som OS/2 netop ikke altid kan garbagecollecte.
Et andet virkeligt godt eksempel er at en process allokerer meget sharet
hukommelse. Dette vil forhindre andre programmer i at allokere privat
hukommelse, forbi grænsen mellem privat og sharet er flyttet ned.
Morten Fordsmand
http://www.morten.fordsmand.com