Зачем нужен сборщик мусора? Как жить без деструкторов?
От: Аноним  
Дата: 03.08.08 10:52
Оценка: :))) :)))
Изучаю java и возникают вопросы:

Зачем нужен сборщик мусора?
Ведь, деструкторы соберут весь мусор.
Я не помню когда последний раз руками очищал память в с++.


Как можно обходиться без деструкторов?
неужели код
    mutex.lock();//что если обьектов много и какой-то из них забыли закрыть
    try {
        ....
    }
    finally{
        mutex.unlock();
    }


считается удобнее и надежнне чем:
    {
        boost::mutex::lock l(mutex);
        .............
    }


а как быть с очисткой ресурсов (закрытием файлов, различных соединений), тоже руками?
В с++ надо один раз очистить ресурс в деструкторе, а java 30 раз в коде, где этот обьект используется.
Не совсем понятно в чем прелесть такого подхода?


05.08.08 16:06: Перенесено модератором из 'C/C++' — Кодт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.