На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (245) « Первая ... 170 171 [172] 173 174 ...  244 245  ( Перейти к последнему сообщению )  
> Есть ли будущее у DELPHI?
    Цитата D_KEY @
    Другие объекты в своих деструкторах(а деструкторы локальных объектов вызываются автоматически). А если объект шарится между несколькими другими объектами, то используют подсчет ссылок, это дает некоторый оверхед по сравнению с использованием ссылок в случае GC, но зато не требует этого самого GC, позволяет точно сказать, когда будет уничтожен объект(в т.ч. и когда будут освобождены ресурсы - память, файлы, etc.).

    А что с циклическими ссылками? И опять же, это не про Делфи.
    Сообщение отредактировано: korvin -
      Цитата korvin @
      А что с циклическими ссылками?

      Их нет :jokingly: А вообще, есть слабые счётчики...
        Цитата korvin @
        А что с циклическими ссылками? И опять же, это не про Делфи.

        Они очень редки. Разруливаются руками через слабые ссылки. Как, собственно, weak в objective-C, если знаешь такой :)
        Для поиска неправильных циклов есть специальные тулзы. От обычных поисковиков утечек вроде valgrind до специальных режимов сборщиков мусора.

        Добавлено
        Но в С++ не так много "голой" динамической памяти. А та, что есть обычно внутри объектов, контейнрах и т.д., которые создаются уже локально, а не в динамической памяти.
          Цитата D_KEY @
          Для поиска неправильных циклов есть специальные тулзы. От обычных поисковиков утечек вроде valgrind до специальных режимов сборщиков мусора.

          Только си, только хардкор! :crazy:
            Цитата Астарот @
            Только си, только хардкор! :crazy:

            Пфф, какой же это хардкор? Вот машкод на перфокартах -- это да...
              Цитата Астарот @
              Цитата D_KEY @
              Для поиска неправильных циклов есть специальные тулзы. От обычных поисковиков утечек вроде valgrind до специальных режимов сборщиков мусора.

              Только си, только хардкор! :crazy:

              По сути-то есть что сказать? Это делается раз в тысячелетие. Ну или если бага по утечке нашлась :)
                По сути могу сказать только, что все эти пляски с бубнами "раз в тысячеление" от мемликов почему-то не спасают.
                  Собственно, в языках с GC так же периодически следят за утечками и начинают расставлять всяческие WeakReference/SoftReference ;)

                  Добавлено
                  Цитата Астарот @
                  По сути могу сказать только, что все эти пляски с бубнами "раз в тысячеление" от мемликов почему-то не спасают.

                  Можно подумать что-либо спасает от других багов :crazy:
                  А GC от утечек не спасает :no-sad:
                    Цитата Астарот @
                    По сути могу сказать только, что все эти пляски с бубнами "раз в тысячеление" от мемликов почему-то не спасают.

                    Ну если их не фиксить, то как не банально бы это звучало, но да не спасают :D
                      Цитата D_KEY @
                      А GC от утечек не спасает

                      Ну, с точки зрения семантики языка именно от утечек то спасает, но да, там свои приколы и слабые ссылки всё равно нужны.
                        Цитата MyNameIsIgor @
                        Ну, с точки зрения семантики языка именно от утечек то спасает

                        С точки зрения семантики языков с GC памяти, как ресурса, вообще не существует, как правило :) Или я ошибаюсь?
                        Вот от чего GC спасает точно, так это от висячих ссылок. Ну и от ручной работы с памятью :D
                        Но вот обязательный сборщик в императивных языках кажется мне "баловством". Вот в функциональщине/логических языках GC требуется для того, чтобы не гадить в семантику языка.
                        Хотя... Я вот что-то подумал. Не избавляет ли ленивость Haskell'я от циклических ссылок? И нельзя ли там обойтись подсчетом ссылок? korvin, что скажешь?

                        Добавлено
                        Цитата D_KEY @
                        Не избавляет ли ленивость Haskell'я от циклических ссылок?

                        Хотя не, глупость подумал...
                          Цитата D_KEY @
                          С точки зрения семантики языков с GC памяти, как ресурса, вообще не существует, как правило :) Или я ошибаюсь?

                          Допустим, что не ошибаешься, ну и что? Утечки памяти при использовании GC возможны только в случае ошибки в архитектуре и/или реализации GC.
                            Цитата D_KEY @
                            Не избавляет ли ленивость Haskell'я от циклических ссылок? И нельзя ли там обойтись подсчетом ссылок? korvin, что скажешь?

                            от циклических ссылок, насколько я понимаю, избавляет тотальная иммутабельность.
                              Цитата D_KEY @
                              Но вот обязательный сборщик в императивных языках кажется мне "баловством".

                              Почему? Разве императивный подход как-то обязывает управлять освобождением памятью вручную?
                                Цитата korvin @
                                Утечки памяти при использовании GC возможны только в случае ошибки в архитектуре и/или реализации GC.

                                да вот нет, утечки памяти возможны и при ошибках в прикладном коде. Банально сохраняем ссылки на локальный объект в глобальном листе и забывает удалять эти ссылки, вот те банальная утечка. В .NET есть частный (но очень распространенный) случай: локальный объект подписывается на событие, которое генерит глобальный. А отписаться - забывает.

                                Добавлено
                                Так что D_KEY правильно сказал, GC спасает только от висячих ссылок, но не от мемликов.
                                Сообщение отредактировано: jack128 -
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (245) « Первая ... 170 171 [172] 173 174 ...  244 245


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,1537 ]   [ 15 queries used ]   [ Generated: 21.12.25, 11:18 GMT ]