Vad är egentligen standard för att förstöra objekt? Skall man implementera IDisposable och köra dispose på alla objekt? Skall man använda Finalize? Behöver man sätta objekt till Nothing? Hur mycket kan och bör man lita på Garbage Collector'n?
Vad är egentligen standard för att förstöra objekt? Skall man implementera IDisposable och köra dispose på alla objekt? Skall man använda Finalize? Behöver man sätta objekt till Nothing? Hur mycket kan och bör man lita på Garbage Collector'n?
Jag är ingen kung på asp.net, men tar mig friheten att svara innan mer kunniga tar över ;)
1. Det finns nog ingen direkt standard, det är situationsberoende. T ex på vissa resursintensiva delar kan det vara nödvändigt att använda Idisposable i vissa situationer
2. Nej
3. Beror på situationen, men ofta inte.
4. Nej
5. Eftersom Microsoft har tänkt till rätt mycket när det gäller GC så litar jag på GC så länge allt fungerar bra.
IDisposable gör som mest nytta i fall du håller på objekt där det är viktigt att frigöra resurser, detta kan t.ex vara filoperation, databaskoppling eller liknande. Använder man även C# using() tillsammans med sitt IDisposable objekt blir allt bara bra (iaf i princip:))
Okej, så om jag har t.ex. ett objekt som motsvarar t.ex. en användare eller vad som helst, så kan man låta GC'n ta hand om den, medans man helst skall använda IDispose på och i t.ex. sin DAL-klass?
264 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849