nerobim v c#, ale poviem ti ako to funguje v jave, co tipujem ze je podobne...
ako si spravne predpokladal v tvojom priklade, po priradeni a = b, by sa mala povodna instancia z pamate odstranit.
ale nerobi sa to automaticky v tom momente.... pokial virtualna masina usudi, ze jej dochadza pamat/alebo sa pripadne
prilis nudi,vtedy spusta GC. Mozno sa pocas behu tvojej aplikacie nespusti ani raz... takze preto sa ti moze zdat praca
gc divna, ona aj je, je za tym velka magia... ;)
pouzivanie destruktorov a odstranovanie instancii z pamati vo vlastnej rezii je krokom spat. programator
sa ma sustredit na to aby jeho program robil to na co je urceny, a veci ktore sa daju automatizovaat nech necha na VM..
su vsak aj specialne pripady ked sa o dealokovanie roznych nativnych resourcoch musi postarat programator, kde to zanho VM nevie
urobit.