Публикации по теме 'garbage-collection'
Сборщики мусора Java 17: руководство для начинающих
Введение
Добро пожаловать в подробное руководство по сборке мусора в Java 17. Этот пост послужит вводным курсом по сборщикам мусора, доступным в Java 17, их использованию и тому, когда использовать каждый из них.
Введение в сборку мусора
Прежде чем мы углубимся в типы сборщиков мусора, давайте сначала разберемся, что такое сборка мусора. В контексте Java сборка мусора (GC) относится к процессу автоматического освобождения памяти, которая больше не требуется приложению. Этот..
Любопытный случай с Островом Изоляции
Сборщик мусора - один из основных примитивов в мире JAVA. Инструмент, удаляющий из памяти неиспользуемые / недоступные объекты. Говорят, что объект имеет право на сборку мусора , если он не содержит ссылок. Вопреки этому утверждению, есть состояние, в котором объекты могут быть собраны мусором, даже если они содержат ссылку. Такой сценарий известен как Остров изоляции .
Проще говоря, остров изоляции - это сценарий, в котором некоторые объекты содержат ссылки друг на друга, но ни к..
Сборка мусора в .Net Часть-1
Сборка мусора — это не любой процесс, запускаемый каким-либо образом вручную или с помощью какой-либо программы, это точно так же, как и любой другой процесс, инициируемый .Net framework самостоятельно, путем принятия нескольких решений, и решение — это не что иное, как запуск программы, он запускается автоматически в фоновом режиме. Хорошо, не правда ли.
Что за история тогда?
всякий раз, когда вы создаете какой-либо экземпляр в C #, CLR выделяет память в куче, и этот процесс повторяется..
Устранение утечек памяти JAVA и понимание сборки мусора
Это простое, но эффективное объяснение утечки памяти и того, как и когда запускается сборщик мусора. Это небольшое чтение разрешит многие сомнения, а также предоставлены ссылки на Oracle Docs для дальнейшего исследования.
Утечка памяти - это сценарий, который возникает, когда объекты больше не используются и сборщик мусора не может удалить их из кучи , потому что на них по-прежнему ссылаются. В результате приложение потребляет все больше и больше ресурсов, что в конечном итоге..
Вопросы по теме 'garbage-collection'
Что мешает сбору потока в С#?
Какой механизм в .NET после этого кода предотвращает сборку мусора для объекта Thread ?
new Thread(Foo).Start();
GC.Collect();
Да, можно с уверенностью предположить, что что-то имеет ссылку на ветку, я просто блуждал, что именно. По...
5072 просмотров
schedule
30.09.2022
Финализатор запущен, пока его объект все еще используется
Вывод: C#/.NET предполагается сборщиком мусора. C# имеет деструктор, используемый для очистки ресурсов. Что происходит, когда объект A удаляется сборщиком мусора в той же строке, когда я пытаюсь клонировать один из его переменных-членов? Судя по...
1584 просмотров
schedule
05.11.2022
Параллельный и параллельный сборщик мусора в Java
В этой статье здесь предлагается использовать -XX:+UseParNewGC "Чтобы включить параллельный сборщик мусора молодого поколения с параллельным сборщиком мусора" .
Меня смущает то, что для того, чтобы включить как параллельный, так и параллельный...
89704 просмотров
schedule
11.05.2022
Информация о сборке мусора и типе среды выполнения
Вопрос fixnum навел меня на другой вопрос. ve задавался вопросом в течение долгого времени.
Многие онлайн-материалы о сборке мусора не рассказывают о том, как можно реализовать информацию о типах во время выполнения. Поэтому я много знаю о...
307 просмотров
schedule
31.03.2022
Как провести модульный тест IDisposable?
Я работаю над частью кода библиотеки вокруг IDisposable . Управляемый путь (через using ) легко проверить. Однако меня интересует финализатор: достаточно ли вызова System.GC.Collect() для принудительного финализатор запустить?
4266 просмотров
schedule
21.10.2022
Когда CLR сообщает, что у объекта есть финализатор?
Я знаю, что в C#, если написать ~MyClass() , это в основном переводится как override System.Object.Finalize() . Таким образом, вне зависимости от того, пишете вы деструктор или нет, каждый тип в CLR будет иметь Finalize() метода (по крайней...
1075 просмотров
schedule
29.07.2022
Как я могу найти утечки памяти в долго работающей программе Perl?
Perl использует подсчет ссылок для сборки мусора, и довольно легко случайно создать циклическую ссылку. Я вижу, что моя программа использует все больше и больше памяти и, вероятно, через несколько дней она переполнится.
Есть ли способ отладить...
23002 просмотров
schedule
05.03.2022
Кто-нибудь нашел настройку сборки мусора полезной?
Я прочитал множество статей о настройке GC в Java и часто задавался вопросом, сколько людей действительно используют некоторые из более продвинутых функций.
Я всегда избегал настройки там, где это было возможно, и сосредоточился на написании как...
2077 просмотров
schedule
16.09.2023
Короткоживущие объекты
Каковы накладные расходы на создание множества временных объектов (т. е. для промежуточных результатов), которые «умирают молодыми» (никогда не переходят в следующее поколение в течение интервала сборки мусора)? Я предполагаю, что «новая» операция...
2982 просмотров
schedule
21.06.2023
побочные эффекты сборки мусора?
Это может быть в высшей степени закрытый вопрос, но я из тех, кто видит, что прилипает к стене. Несмотря на все преимущества управления памятью и временем жизни, предоставляемые средой выполнения со сборкой мусора, были ли какие-либо заметные случаи...
1425 просмотров
schedule
20.02.2022
Центр уведомлений NSWorkspace не отправляет уведомления при сборке мусора
Я не уверен, что я делаю что-то неправильно здесь:
Я регистрируюсь для получения уведомлений Workspace, используя этот фрагмент в awakeFromNib
[[[NSWorkspace sharedWorkspace] notificationCenter]
addObserver:self...
511 просмотров
schedule
17.10.2022
Что происходит, когда JSP завершает выполнение?
После завершения выполнения JSP все переменные, объявленные на странице JSP, будут отправлены на сборку мусора? Если я объявлю несколько хэш-таблиц с интенсивным использованием памяти в JSP и позволю JSP завершить выполнение без предварительной...
659 просмотров
schedule
25.02.2023
Почему я не могу использовать 4 ГБ ОЗУ на своем компьютере для обработки менее 2 ГБ информации на C#?
Сценарий: более 1,5 ГБ текстовых и CSV-файлов, которые мне нужно обработать математически. Я пытался использовать SQL Server Express, но загрузка информации, даже при BULK-импорте, занимает очень много времени, и в идеале мне нужно иметь весь набор...
1489 просмотров
schedule
16.08.2022
Как работает механизм сборки мусора?
В терминологии непрофессионала, как работает механизм сборки мусора?
Как определить доступность объекта для сборки мусора?
Кроме того, что означает Reference Counting, Mark and Sweep, Copying, Train в алгоритмах сборки мусора?
10445 просмотров
schedule
01.08.2022
Опыт использования gcServer=true для установки сборщика мусора для .NET.
Кто-нибудь использовал конфигурацию, включающую сборщик мусора, оптимизированную для многопроцессорных машин, используя Aspnet.config с:
<gcServer enabled="true"/>
<gcConcurrent enabled="true"/>
Улучшилась ли производительность...
20730 просмотров
schedule
05.10.2022
Удобный способ вызова GC::KeepAlive в сценариях C++/CLI?
Я пишу некоторые управляемые оболочки, используя C++/CLI. Проблема в том, что сборщик мусора иногда удаляет объект, пока я использую из него неуправляемые члены. (Я считаю такое поведение безумием, но это уже другая тема). Подробнее см.:...
920 просмотров
schedule
19.12.2022
Сборка мусора не уменьшает текущее использование памяти - в режиме выпуска. Почему?
Я создал быструю программу, которой нужно было перебрать огромный файл журнала (пара миллионов записей) и найти различные фрагменты изнутри. Поскольку объем данных был настолько огромным, мне было любопытно посмотреть на вкладку производительности...
8806 просмотров
schedule
15.04.2023
Что происходит во время сборки мусора, если поколение 2 заполнено?
Я перечитываю CLR через C# прямо сейчас, и у вас есть вопросы о сборке мусора в .NET. В книге после заполнения поколения 0 запускается сборка мусора и перемещает все ожидающие ссылки на объекты в поколение 1.
То же самое происходит, когда...
4348 просмотров
schedule
12.08.2022
Объект, а не мусор
У меня есть сторонний компонент, который я использую, и я вижу некоторые проблемы с неосвобождаемыми ресурсами. Компонент заставляет окна создавать дескриптор UDP-сокета (\ Device \ Udp, а также \ Device \ Afd). Если я разрешаю программе выполнить и...
864 просмотров
schedule
02.08.2023
Что именно делает gc_heap::plan_phase?
Я пытаюсь отладить службу Windows .net, которая проводит много времени в GC.
Используя windbg во время сборов, я обнаружил, что большая часть времени уходит на:
00000000`0279e8e0 00000642`7f5368a3 mscorwks!WKS::gc_heap::plan_phase+0x50c...
482 просмотров
schedule
10.09.2022