Запитання з тегом «garbage-collection»

Збір сміття (GC) - це форма автоматичного управління пам'яттю, яка намагається повернути сміття або пам'ять, зайняту об'єктами, які більше не використовуються програмою.

14
Дуже великі розміри купи Java [закрито]
Закрито . Це питання має бути більш сфокусованим . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно зосереджувалось на одній проблемі, лише редагуючи цю публікацію . Закрито 6 років тому . Удосконалюйте це питання Хто-небудь має досвід використання дуже великих куп, розміром 12 ГБ або більше …

3
Чому існує WeakHashMap, але немає WeakSet?
Від Дж. Блоха ... джерелом витоків пам'яті є слухачі ... Найкращий спосіб забезпечити, щоб зворотні виклики були негайно зібраним сміттям, - це зберігати лише слабкі посилання на них, наприклад, зберігаючи їх лише як ключі в WeakHashMap . Отже, чому у фреймворку Java Collections немає жодного WeakSet ?

4
Чому System.Timers.Timer переживає GC, але не System.Threading.Timer?
Здається, System.Timers.Timerекземпляри зберігаються в живих за допомогою якогось механізму, але System.Threading.Timerекземпляри - ні. Зразок програми з періодичним System.Threading.Timerта автоматичним скиданням System.Timers.Timer: class Program { static void Main(string[] args) { var timer1 = new System.Threading.Timer( _ => Console.WriteLine("Stayin alive (1)..."), null, 0, 400); var timer2 = new System.Timers.Timer { Interval = …

12
RAII проти збирача сміття
Нещодавно я дивився чудову розмову Herb Sutter про "Leak Free C ++ ..." на CppCon 2016, де він розповів про використання розумних покажчиків для реалізації RAII (залучення ресурсів є ініціалізацією) - Концепції та те, як вони вирішують більшість проблем з витоками пам'яті. Тепер мені було цікаво. Якщо я суворо дотримуюсь …

1
Споживання пам'яті GetRef (збирання сміття) змінилося на KB4525236
У нас виникають проблеми із пам'яттю після встановлення KB4525236 на наших серверах Windows 2016 / Клієнтах Windows 10. Це виправлення безпеки, схоже, змінило момент, коли пам'ять збирається сміттям під час виклику функції через GetRef. Pré KB4525236 Кожен екземпляр, створений у функції, яка викликається через GetRefзібране сміття, як тільки було встановлено …


2
OutOfMemoryException, незважаючи на використання WeakHashMap
Якщо не зателефонувати System.gc(), система викине OutOfMemoryException. Я не знаю, чому мені потрібно System.gc()явно дзвонити ; JVM повинен зателефонувати gc()собі, правда? Порадьте, будь ласка. Наступний мій тестовий код: public static void main(String[] args) throws InterruptedException { WeakHashMap<String, int[]> hm = new WeakHashMap<>(); int i = 0; while(true) { Thread.sleep(1000); i++; …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.