Публикации по теме 'garbage-collection'


Рекомендации по предотвращению утечек памяти
В Предыдущем блоге мы разобрались с управлением памятью в Node.js, как работает сборщик мусора (GC) и каковы возможные причины утечек памяти, несмотря на то, что GC играет решающую роль. В этом блоге давайте рассмотрим лучшие практики для обеспечения эффективного использования памяти в Node.js. СОКРАЩЕНИЕ ИСПОЛЬЗОВАНИЯ ГЛОБАЛЬНЫХ ПЕРЕМЕННЫХ Поскольку глобальные переменные никогда не удаляются сборщиком мусора, лучше не злоупотреблять ими. В частности, в javascript вам нужно..

Написание собственного сборщика мусора для JDK12
Интерфейс ГХ В рамках JEP 304 ( https://openjdk.java.net/jeps/304 ) код сборщика мусора JDK был переработан, чтобы создать стандартный интерфейс для всех алгоритмов сборки мусора и изолировать каждый алгоритм сборки мусора в собственном наборе исходные файлы. Другой родственный JEP 318 ( https://openjdk.java.net/jeps/318 ) представил очень простой бесполезный сборщик мусора, называемый Epsilon. Благодаря этим двум изменениям код сборщика мусора стал модульным и изолированным, а код..

Модель памяти Java, часть 2 | Сборщики мусора Java
В этой серии из 3 частей мы собираемся обсудить вторую часть Java Garbage Collections. Если вы не читали Структура памяти JVM (Часть 1) , рекомендую сначала прочитать. В любом языке программирования сборка мусора является неотъемлемой частью автоматического управления памятью. В Java сборка мусора (GC) играет решающую роль в управлении памятью. Это помогает освободить память, которая больше не используется приложением, гарантируя, что система может продолжать работать эффективно без..

Иллюстрированное руководство по управлению памятью и сборке мусора
"ПРИВЕТ, МИР!" Иллюстрированное руководство по управлению памятью и сборке мусора Как современные языки программирования сохраняют вашу память в чистоте Давным-давно почти языки программирования приняли решающее решение. Они решили, что управление памятью слишком важно, чтобы оставлять его в руках программистов. Есть несколько исключений (программисты на C ++, встаньте, пожалуйста). Но в большинстве современных сред программирования вам не нужно думать о захвате блока памяти,..

Не используйте сборку мусора для обнаружения утечки памяти
Сборка мусора - это метод автоматического освобождения ненужной памяти. Он очень известен, потому что многие языки программирования приняли сборку мусора после того, как Джон Маккарти реализовал ее в Lisp. Однако есть несколько человек, которые неправильно понимают, что делает сборка мусора. Если вы думаете, что сборка мусора предотвращает утечку памяти, к сожалению, вы один из них. Сборка мусора не может предотвратить утечку памяти. Невозможно избежать всех утечек памяти, если..

Вопросы по теме 'garbage-collection'

Могу ли я запретить сборщику мусора останавливать некоторые из моих потоков?
Можно ли в приложении Compact Framework запретить сборщику мусора безоговорочно останавливать хотя бы один из потоков или блокировать сборку мусора хотя бы в некоторых частях кода? Я думаю, что это связано с установкой приоритетов в реальном...
1257 просмотров

Будет ли C собирать мусор быстрее, чем C++?
Я довольно долго думал о том, как управлять памятью в моем следующем проекте. Который пишет DSL на C/C++. Это можно сделать любым из трех способов. C или C++ с подсчетом ссылок. Вывоз мусора С. В C++ копирование классов и структур из...
1013 просмотров

Собирается ли Objective-C в Linux мусор?
В Objective-C v2.0 (который использует Mac) появилась новая функция «Сборка мусора». Я ребенок на ПК с Linux (Ubuntu, если вам интересно). Итак, мой вопрос: использование компилятора gcc/g++ - это сбор мусора Objective-C?
970 просмотров
schedule 14.01.2024

Размер кучи поколения 0 .NET
Можно ли установить минимальный размер кучи поколения 0 в .NET? У меня следующая ситуация. У меня есть функция, которая выделяет около 20-30 МБ объектов размером 1 КБ, что-то делает с ними и завершает работу, оставляя все выделенные объекты для...
10333 просмотров
schedule 28.10.2022

Вызов System.gc() в мобильном телефоне
Мне нужно поддерживать приложение J2ME. В приложении много System.gc() . Перед вызовом System.gc() все атрибуты устанавливаются равными нулю. Имеет ли смысл устанавливать для атрибутов значение null? Имеет ли смысл звонить System.gc() ? Разве...
1553 просмотров
schedule 05.10.2023

Почему обработка сигналов Django по умолчанию использует слабые ссылки для обратных вызовов?
В документах Django сказано следующее: Также обратите внимание, что Django по умолчанию хранит обработчики сигналов как слабые ссылки, поэтому, если ваш обработчик является локальной функцией, он может быть удален сборщиком мусора. Чтобы...
2344 просмотров

Изменение поведения сборщика мусора после перехода с Java5 на 6
Недавно мы перенесли наши системы с Sun Java 5 на виртуальную машину сервера Java6 (в частности, 1.6.0_16 в 32-разрядной версии Linux). Мы заметили, что поведение сборки мусора изменилось таким образом, что сработала наша система мониторинга...
486 просмотров
schedule 29.02.2024

Коллекции Java и сборщик мусора
Небольшой вопрос относительно производительности в веб-приложении Java. Предположим, у меня есть List<Rubrique> listRubriques с десятью Rubrique объектами. Rubrique содержит один список продуктов ( List<product>...
10364 просмотров

Зависит ли скорость выделения от используемого сборщика мусора?
Мое приложение выделяет массу объектов (> 1 млн в секунду; большинство объектов представляют собой массивы байтов размером ~ 80-100 и строки того же размера), и я думаю, что это может быть источником его низкой производительности. Рабочий набор...
156 просмотров

Накладные расходы (скорость и мусор) на вызов функций, которые ничего не делают
Я пытаюсь снизить затраты на производительность/сборку мусора при регистрации операторов. Я хочу иметь множество операторов ведения журнала, которые я мог бы включить для отладки, но также иметь возможность отключить их для быстрой работы. Я...
184 просмотров
schedule 03.10.2023

Синглтоны и ASP.NET MVC
Прямо сейчас у меня возникла проблема с синглтоном, который я только что написал для использования в ASP.NET MVC. Мой синглтон выглядит так: public sealed class RequestGenerator : IRequestGenerator { // Singleton pattern private...
4487 просмотров

Почему анонимные (C)Python-объекты не освобождаются сразу?
Я заметил кое-что об освобождении объектов CPython, что возбудило мое любопытство. Допустим, я определяю тип, который печатает сообщение из своей функции tp_dealloc : static void pyfoo_Bar_dealloc(pyfoo_Bar* self) {...
318 просмотров
schedule 25.02.2024

Штраф за производительность для финализатора, если он никогда не вызывался
У меня есть класс с финализатором. Но поскольку я всегда вызываю Dispose() , а Dispose() вызывает GC.SupressFinalize(this) , я думаю, что мой объект никогда не попадает в очередь финализации. Финализатор просто присутствует в качестве...
815 просмотров
schedule 24.07.2022

выполнение команды java удаленно через ssh завершается с ошибкой GC
Я пытался выполнить java-приложение с использованием SSH с удаленного компьютера, но оно не очень хорошо работает :( Чтобы выполнить это приложение на локальном компьютере, я написал сценарий оболочки, включающий команду java, и на локальном...
455 просмотров
schedule 14.08.2022

Как предотвратить циклические ссылки с помощью внедрения зависимостей и сборки мусора?
Думаю, я все еще пытаюсь понять внедрение зависимостей и роль контейнера DI. Если DI означает, что компонент более низкого уровня зависит от компонента более высокого уровня и нет циклической ссылки, не будет ли этот объект собираться мусором? Как...
1583 просмотров

Сборка мусора переопределена в LLVM 3?
Я читал о том, что LLVM v3 использует статический анализ кода для реализации своего рода автоматической сборки мусора, которая подготавливается и выполняется во время компиляции. Если компилятор статически вставляет, сохраняет и выпускает, тогда...
1627 просмотров
schedule 18.04.2024

Потокобезопасность примера Java с использованием WeakReference
Я читаю о слабых ссылках в Java после того, как увидел сообщение SO и понял, что на самом деле не знаю, что это такое. Следующий код взят из стр. 457, глава 17: «Сборка мусора и память» в «Языке программирования Java, четвертое издание» Арнольда,...
4974 просмотров

Как CLR находит классы, реализующие IDisposable?
Мне нужны пояснения по поводу как CLR, в частности, сборщик мусора находит классы, реализующие интерфейс IDisposable ; и как он вызывает метод Dispose (всех классов, реализующих интерфейс IDisposable ) для освобождения памяти?
373 просмотров
schedule 22.10.2023

Какой вид сборки мусора использует Go?
Go - это язык со сборкой мусора: http://golang.org/doc/go_faq.html#garbage_collection Здесь написано, что это сборщик мусора, но он не вникает в детали, и его замена находится в разработке ... однако этот абзац, похоже, не сильно обновлялся с...
45717 просмотров
schedule 12.01.2024

очистка переменных в finalize и Dealloc
Есть ли метод, который вызывается перед финализацией, и который я могу использовать для очистки, как обычно, для которой я использую Dealloc? С отключенным GarbageCollection в методе Dealloc я выполняю очистку, например, устанавливаю...
178 просмотров
schedule 31.03.2024