C# Сборщик Мусора | Garbage Collector | Часть 3

Sdílet
Vložit
  • čas přidán 9. 07. 2024
  • Это третья часть серии роликов посвященных работе памяти в .NET. В данном видео мы рассмотрим работу Garbage Collector (Сборщик Мусора). Будет интересно :)
    Ссылка на первую часть: • C# Стек и Куча | Stack...
    Ссылка на вторую часть: • C# Стек и Куча | Stack...
    Telegram канал: t.me/codaza
    На кофе ☕️: pay.cloudtips.ru/p/179d0532
    Patreon: / codaza
    Boosty: boosty.to/codaza
    0:00 - Начало
    0:55 - Принцип работы Garbage Collector
    2:20 - Поколения объектов
    4:17 - Алгоритм работы с поколениями объектов
    5:46 - Large Object Heap
    6:26 - Дефрагментация
    7:42 - Граф Объектов
    9:50 - Деструктор
    11:21 - Очередь Финализации
    11:49 - Завершение
    #garbagecollector #сборщикмусора #csharp #сишарп #aspnetcore #netcore

Komentáře • 83

  • @codaza-channel
    @codaza-channel  Před 3 lety +22

    Удобная навигация по видео :)
    0:00 - Начало
    0:55 - Принцип работы Garbage Collector
    2:20 - Поколения объектов
    4:17 - Алгоритм работы с поколениями объектов
    5:46 - Large Object Heap
    6:26 - Дефрагментация
    7:42 - Граф Объектов
    9:50 - Деструктор
    11:21 - Очередь Финализации
    11:49 - Завершение

    • @user-yo7mw6oj4p
      @user-yo7mw6oj4p Před 3 lety +1

      Спасибо за телепорт.

    • @slavaandreev1494
      @slavaandreev1494 Před rokem

      Братан, хорош! Давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик

  • @behemoth1621
    @behemoth1621 Před 8 dny

    Простосамый крутой канал по C#.Самое понятное объяснение!

  • @user-iz3nq2su3r
    @user-iz3nq2su3r Před 2 lety +11

    сколько бы не смотрел другие канала или не покупал курсы, никогда не видел такой доступной подачи, пожалуйста продолжай, ты нам очень нужен)

  • @adamm4739
    @adamm4739 Před 2 lety +57

    Чувак, обязательно продолжай! Невероятно доступный контент, отличная подача!! :)

    • @codaza-channel
      @codaza-channel  Před 2 lety +4

      Ваш комментарий хорошо мотивирует, благодарю 👍 Впереди много интересного контента 🙂

  • @sixty_nine_seas
    @sixty_nine_seas Před 2 lety +21

    Ваша серия видео - настоящая находка! Структурирование материала и визуал на высоте. Очень благодарен Вам за подобный контент! : )

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      Благодарю за комментарий. Очень рад, что материал оказался полезным 🙂 С наступающим! 🎄

  • @shomagasanov8106
    @shomagasanov8106 Před 2 lety +11

    Почему у такого шикарного канала так мало подписчиков??? новый канал??
    Спасибо огромное за такой классный и доходчивый подход.

    • @codaza-channel
      @codaza-channel  Před 2 lety +2

      Благодарю за тёплый комментарий. Рад, что подход к объяснению Вам понравился. Благодаря такой аудитории хочется создавать больше. Впереди много интересного :)

  • @mrsotnik2411
    @mrsotnik2411 Před rokem

    Объяснено всё доступно, коротко и достаточно подробно для базового понимания. Большое спасибо за ролик.

  • @user-jj9rb9nu2h
    @user-jj9rb9nu2h Před 3 lety +9

    Спасибо! Все просто и доступно, этого очень не хватает)

    • @codaza-channel
      @codaza-channel  Před 3 lety +1

      Спасибо. Дальше - больше 🙂

  • @alibek3006
    @alibek3006 Před 2 lety +3

    Спасибо за видео. На собеседовании был вопрос про память, LOH и дефрагментацию, на который теперь знаю ответ 👍

  • @turalaliyev3977
    @turalaliyev3977 Před 2 lety +5

    Ты гений. Ты знаешь как правильно подавать материал. Все на высоком уровне! Открое себе Patreon для поддержки канала, открывай стримы с донатом. Подписка и поддержка от меня ! Жду новых видео, особенно про собеседования вопросы интересно, что скажешь.

    • @codaza-channel
      @codaza-channel  Před 2 lety

      Благодарю за высокую оценку! 🙂
      Недавно на канале активировано "Спонсорство". При желании, можете присоединиться.

  • @user-qc4xb1rj6s
    @user-qc4xb1rj6s Před rokem +1

    Просто спасибо.

  • @chinchilla898
    @chinchilla898 Před 3 lety +3

    codaza, спасибо! 👍

  • @boombbiddi7931
    @boombbiddi7931 Před 7 měsíci

    ееее красава мужик, отличные видосы

  • @apdgslfhsodbna
    @apdgslfhsodbna Před rokem +2

    Очень хороший видос, однозначно лай и в сохраненки до востребования быстрого восполнения подзабытых знаний и подготовки к собеседованиям))

  • @evagor730
    @evagor730 Před 2 lety +1

    ахаха)) завещание объекта)) спасибо, с ч/ю! хорошо запоминается

  • @bestberz3251
    @bestberz3251 Před 6 měsíci

    В конце как-то даже грустно стало 😅

  • @ooohyeahooohyeah
    @ooohyeahooohyeah Před rokem

    я 5 лет неправильно кодил... Спасибо за видео"

  • @yakajibee5289
    @yakajibee5289 Před rokem

    Thank you!🙂

  • @sergeymigel4680
    @sergeymigel4680 Před rokem

    благодарю

  • @glukh0v_d1ma
    @glukh0v_d1ma Před 11 měsíci

    ТОП!!!!

  • @sergeymigel4680
    @sergeymigel4680 Před rokem

    thank you again

  • @user-bg2fd1zq9d
    @user-bg2fd1zq9d Před rokem +1

    Спасибо за качественный материал, сразу стало все понятно:)

  • @Eugene.g
    @Eugene.g Před 2 lety +2

    отличный канал. Мое почтение

  • @PLoveCode
    @PLoveCode Před 2 lety +1

    Серия видео - топ. Очень информативно и наглядно. Для меня как визуала это очень важно. Музыка на фоне приятная. Ее можно сделать потише на процентов 15, чтобы не меньше обращать на нее внимание.

    • @codaza-channel
      @codaza-channel  Před 2 lety

      Благодарю за комментарий. Рад, что серия видео оказалась полезной для Вас. В новых видео фоновая музыка звучит тише 😊

  • @adiletmyrzabekov6298
    @adiletmyrzabekov6298 Před 2 lety +2

    Офигенно объяснил , спасибо )

  • @EminHasanov-nj6un
    @EminHasanov-nj6un Před rokem +1

    Как всегда - превосходно!

  • @user-rb5dg6cw3x
    @user-rb5dg6cw3x Před rokem +1

    Спасибо!

  • @voffkaboo7183
    @voffkaboo7183 Před 2 lety +2

    мен, ты крут) продолжай в том же духе)

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      Благодарю за поддержку и комментарий. Это важно! :)

  • @user-zi2fh7zp1q
    @user-zi2fh7zp1q Před rokem +1

    Спасибо! Это шедевр

  • @kander5415
    @kander5415 Před rokem

    Спасибо, благодаря твоему примеру с рубашками собес прошел)

  • @artstar991
    @artstar991 Před 2 lety +2

    Клевая музычка в роликах. Приятная атмосфера

  • @viktorgrinevich882
    @viktorgrinevich882 Před 2 lety +1

    спасибо!

  • @Artem-lk9ru
    @Artem-lk9ru Před rokem +1

    Отличный контент и подача. В этом видео было затронуто о том, что на собеседовании могут спросить. Если есть возможность, то могли бы вы записать серию с вопросами на собеседовании?

  • @aarongrimes9276
    @aarongrimes9276 Před 2 lety +2

    Отлично и очень понятно объяснили, еще бы про IDisposable рассказали было бы хорошо

    • @codaza-channel
      @codaza-channel  Před 2 lety

      Благодарю за комментарий. Я думаю, обязательно поговорим на канале про IDisposable подробнее. А пока, есть короткое видео на эту тему czcams.com/video/Xwk7WSMY89I/video.html

    • @aarongrimes9276
      @aarongrimes9276 Před 2 lety +2

      @@codaza-channel сегодня успешно прошел собеседование благодаря вашим видео

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      @@aarongrimes9276 Я вас поздравляю! Мне очень приятно узнать об этом. Такие комментарии дают понять, что сделанная работа на канале не проходит даром. Уверен, вы тоже проделали большую работу, чтобы получить это место. Ваш комментарий (такого уровня) первый на канале, от этого здорово вдвойне. Успехов в новых начинаниях! 🙂

    • @aarongrimes9276
      @aarongrimes9276 Před 2 lety +1

      @@codaza-channel спасибо большое, надеюсь ваш канал обретёт успехов и наберёт свою аудиторию

  • @user-su7sk3bk1r
    @user-su7sk3bk1r Před 2 lety +1

    Cool

  • @maxoptions3550
    @maxoptions3550 Před 2 lety +2

    На 3 минуте 55 секунде, про остановку приложения немного не корректно. Очистка первого поколения происходит когда оно заполняет определенный процент от общей заполненности памяти, если этот процент не занят то его очистка не будет произведена и будет очищатся только нулевое поколение снова и снова, не затрагивая первое поколение. Тоже самое со вторым поколением.

    • @maxoptions3550
      @maxoptions3550 Před 2 lety +1

      Но видео очень информативное, жирный лайк!

    • @codaza-channel
      @codaza-channel  Před 2 lety

      Благодарю за важное и полезное уточнение!

  • @limeniye4634
    @limeniye4634 Před 2 lety +1

    Очень, очень годное видео. Спасибо.

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      Рад, что информация была полезной :)

    • @limeniye4634
      @limeniye4634 Před 2 lety

      @@codaza-channel к сожалению про POH - ничего не понял :(

    • @codaza-channel
      @codaza-channel  Před 2 lety

      POH - более обширная тема. Это новинка .NET5. Просто выходит за рамки формата ролика :) Не переживайте, это уже более глубокие знания, которые не требуются в повседневной работе.

    • @limeniye4634
      @limeniye4634 Před 2 lety

      @@codaza-channel :((

  • @firemanhood1526
    @firemanhood1526 Před 2 lety

    Кодазыч решат) Раз уж ты затронул файналайз, в идеале было бы еще пару минут про диспоуз и почему его нужно использовать, а не файналайз! Спасибо

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      На тему Dispose, на канале есть short czcams.com/video/Xwk7WSMY89I/video.html 🙂

  • @TheVelf
    @TheVelf Před 2 lety

    Можно пожалуйста в вашем изложении работа с сетью? вебсокет и разного рода абстракции для соединения и передачи данных, стримы и прочее. Ну и сама работа с сетью, самые часто используемые протоколы, для чего используются. У вас прекрасно получается систематизировать это и в голове проще укладывается от вашего изложения. Заранее спасибо.

  • @dannycyberwalker
    @dannycyberwalker Před 2 lety +2

    Классное видео, про CLR в планах?

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

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

  • @Console.WriteLine
    @Console.WriteLine Před rokem

    Видео про API

  • @glu_max
    @glu_max Před rokem

    Почему музыка настолько громкая? Перебивает голос, слушать очень трудно...
    А по сути - всё просто и интересно рассказано, благодарю👍

  • @pispis3617
    @pispis3617 Před rokem +1

    половина джунов, а то и больше, не знают таких подробностей про сборщик мусора и кучи
    Так что если к собесу готовитесь на джуна или интерна. Эти знания помогут вам получить небольшой плюсик по сравнению с другими кандидатами

  • @unknownvisitor2190
    @unknownvisitor2190 Před 7 měsíci

    кодаза вернись!(

  • @polina-lg4cj
    @polina-lg4cj Před 7 měsíci

    есть текст всего ролика?

  • @grody6301
    @grody6301 Před 2 lety +1

    Привет, есть видео в текстовом формате? для универа надо)

  • @VladisLove-tg5is
    @VladisLove-tg5is Před 2 lety

    Я правильно понимаю, что объекты, которые не переопределяют метод Finalize() => соответственно не имеют деструктора, а значит не попадают в Finalization Queue? Разработчик должен всегда переопределять Finalize, если объект использует неуправляемые ресурсы?

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      Да, Вы правильно поняли. Кроме того, в классе, который использует неуправляемые ресурсы, следует реализовать интерфейс IDisposable. Реализация IDisposable необходима для того, чтобы была возможность немедленного освобождения неуправляемых ресурсов сразу после того, как в них нет необходимости. Без этого, освобождение неуправляемых ресурсов будет отложено до удаления объекта из управляемой кучи, а этот момент может настать не сразу.
      На канале codaza есть short посвященный IDisposable: czcams.com/users/shortsXwk7WSMY89I
      Еще существует паттерн IDisposable, подробнее можно узнать тут: www.c-sharpcorner.com/article/garbage-collection-dispose-vs-finalize-and-idisposable-pattern/

  • @volodia9509
    @volodia9509 Před 2 lety

    Какое отношение, объекты из large Object heap имеют к поколению 2 в small Object heap? Разве это не разные типы памяти?

    • @codaza-channel
      @codaza-channel  Před 2 lety

      Объекты из Large Object Heap просто относятся к поколению #2. Я не совсем понял почему Вы подумали, что объекты из LOH находятся во 2ом поколении в Small Object Heap. Напишите, пожалуйста, тайм-код где вас что-то смутило, я пересмотрю этот фрагмент и попытаюсь ответить подробнее.

    • @volodia9509
      @volodia9509 Před 2 lety

      @@codaza-channel на 6:05 просто произносится, что большие объекты находятся сразу во втором поколении, а т.к речь до этого шла о SOH, возникло у меня недопонимание, как большие объекты создаются в памяти SOH являясь частью памяти LOH. Но порыв интернеты, вроде как пришёл к выводу, что у LOH поколение на самом деле нет, оно можно сказать условное, просто большие объекты из LOH одновременно очищаются со вторым поколением из SOH. Поправьте пожалуйста, если это не так)

    • @codaza-channel
      @codaza-channel  Před 2 lety +1

      @@volodia9509 Из вашего комментария очевидно, что Вы поняли все верно :) Никакие объекты из LOH не создаются в SOH. Возможно, мне стоило как-то иначе сформулировать мысль в видео.

    • @volodia9509
      @volodia9509 Před 2 lety +1

      @@codaza-channel спасибо за ответ)

  • @altermrabs8167
    @altermrabs8167 Před 2 lety

    Про граф обьектов не очень понятно. Жаль нет подробного видео по теме

  • @RedBallOfLove
    @RedBallOfLove Před 8 měsíci

    на самом деле дефрагментация это очень важная часть и не только для вместимости объектов в память, но и для скорости работы приложения т.к. если данные хранятся плотно в памяти, то доступ к этим объектам осуществляется быстрее т.к. не надо из оперативки выкачивать данные на каждое обращение к объекту в куче.

  • @nokia_n-gage
    @nokia_n-gage Před 2 lety +1

    Спасибо!