[so] [Tema1][General] Folosire macro DIE

Razvan Deaconescu razvan.deaconescu at cs.pub.ro
Mon Mar 9 09:42:28 EET 2020


Razvan Deaconescu <razvan.deaconescu at cs.pub.ro> writes:
> Mihaila Corina via so <so at cursuri.cs.pub.ro> writes:
>> Buna ziua!
>>
>> Este in regula daca folosim DIE dupa fiecare alocare dinamica nereusita?
>> Sau o sa ni se scada pentru ca nu dezalocam resursele inainte de a da exit?
>
> Bună, Corina.
>
> E OK să folosiți DIE.
>
> Toate resursele proprii / nepartajate procesului (memorie alocată,
> fișiere deschise, thread-uri create) sunt eliberate și închise la
> încheierea procesului (exit). Așa că nu e nevoie să eliberați nimic
> înainte de exit.
>
> Am adăugat precizare și pe wiki[1].

Mi s-a șoptit în casă (mersi, Vali) că răspunsul de mai sus nu este 100%
corect, așa că l-am actualizat[1]:
---
Pe sistemele de operare general purpose de tipul Linux, *OS, Windows,
*BSD, cu biblioteci standard C complexe, resursele proprii /
nepartajate procesului (memorie alocată, fișiere deschise, thread-uri
create) sunt eliberate și închise la încheierea procesului (exit). Pe
aceste sisteme nu e nevoie să eliberați explicit înainte de exit; pot
există medii specifice în care acest lucru nu se întâmplă. Cea mai bună
practică (best practice) este să eliberați explicit resursele ca să
acoperiți toate situațiile.
---

> [1] https://ocw.cs.pub.ro/courses/so/teme/general#lista_depunctari

Răzvan


More information about the so mailing list