Публикации по теме '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 просмотров

Как провести модульный тест IDisposable?
Я работаю над частью кода библиотеки вокруг IDisposable . Управляемый путь (через using ) легко проверить. Однако меня интересует финализатор: достаточно ли вызова System.GC.Collect() для принудительного финализатор запустить?
4266 просмотров

Когда CLR сообщает, что у объекта есть финализатор?
Я знаю, что в C#, если написать ~MyClass() , это в основном переводится как override System.Object.Finalize() . Таким образом, вне зависимости от того, пишете вы деструктор или нет, каждый тип в CLR будет иметь Finalize() метода (по крайней...
1075 просмотров

Как я могу найти утечки памяти в долго работающей программе Perl?
Perl использует подсчет ссылок для сборки мусора, и довольно легко случайно создать циклическую ссылку. Я вижу, что моя программа использует все больше и больше памяти и, вероятно, через несколько дней она переполнится. Есть ли способ отладить...
23002 просмотров
schedule 05.03.2022

Кто-нибудь нашел настройку сборки мусора полезной?
Я прочитал множество статей о настройке GC в Java и часто задавался вопросом, сколько людей действительно используют некоторые из более продвинутых функций. Я всегда избегал настройки там, где это было возможно, и сосредоточился на написании как...
2077 просмотров
schedule 16.09.2023

Короткоживущие объекты
Каковы накладные расходы на создание множества временных объектов (т. е. для промежуточных результатов), которые «умирают молодыми» (никогда не переходят в следующее поколение в течение интервала сборки мусора)? Я предполагаю, что «новая» операция...
2982 просмотров

побочные эффекты сборки мусора?
Это может быть в высшей степени закрытый вопрос, но я из тех, кто видит, что прилипает к стене. Несмотря на все преимущества управления памятью и временем жизни, предоставляемые средой выполнения со сборкой мусора, были ли какие-либо заметные случаи...
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 просмотров

Как работает механизм сборки мусора?
В терминологии непрофессионала, как работает механизм сборки мусора? Как определить доступность объекта для сборки мусора? Кроме того, что означает Reference Counting, Mark and Sweep, Copying, Train в алгоритмах сборки мусора?
10445 просмотров

Опыт использования gcServer=true для установки сборщика мусора для .NET.
Кто-нибудь использовал конфигурацию, включающую сборщик мусора, оптимизированную для многопроцессорных машин, используя Aspnet.config с: <gcServer enabled="true"/> <gcConcurrent enabled="true"/> Улучшилась ли производительность...
20730 просмотров

Удобный способ вызова 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