Предположим, что
void foo () {
Bar bar = new Bar(); // bar is never referred to after this line
// (1)
doSomethingWithoutBar();
}
В (1) объект bar указывает на право на сбор мусора? Или bar должен выпасть из сферы действия? Имеет ли значение, если GC.Collect вызывается doSomethingWithoutBar?
Это важно знать, есть ли в баре деструктор (С#) или что-то такое напуганное.