MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Java: Управление ресурсами

Название:Java: Управление ресурсами
Просмотров:101
Раздел:Информатика, программирование
Ссылка:Скачать(7 KB)
Описание:Что может, а чего не может GC. Деструкторов нет. А что вместо? Кэширование объектов.

Часть полного текста документа:

Java: Управление ресурсами.
    Как я заметил, многие, начинающие программировать на Java, не вполне чётко представляют себе, как следует управлять ресурсами на этом языке. В данной статье я попытался изложить своё видение на этот аспект программирования. Что может, а чего не может GC.
    Одним из особенностей языка Java является автоматическая сборка мусора - пресловутый Garbage Collector (сокращённо - GC). GC - это фоновый процесс, который занимается поиском и освобождением неиспользуемых объектов. Много копий было сломано в дискуссиях, хорошо это или плохо, причём существенные аргументы есть как у сторонников, так и у противников этой технологии. Но я не об этом. Примем существование GC как данность и рассмотрим особенности программирования в данной среде.
    Одним из следствий наличия GC (и отсутствия размещения объектов в стеке) является отсутствие деструкторов, аналогичным существующих в C++ - автоматически вызываемых методов для уничтожения объектов по выходу из области видимости. Вместо них есть другие механизмы, которые позволяют добиться того же самого.
    Другим следствием является необходимость следить за ссылками на объекты, потому как GC именно по наличию ссылки на объект определяет его нужность. Для возможности управления строгостью ссылок в JDK 1.2 был введён новый пакет java.lang.ref, классы которого позволяет создавать так называемые "слабые" ссылки на объекты. Это особенно полезно для реализации кэширования объектов.
    Начитавшись рекламных статей, может показаться, что очисткой ресурсов вообще не стоит заниматься - всё сделает GC. Тут важно понимать, что в понятие ресурсов входит не только оперативная память, но так же и многое другое. Например - открытые файлы, сокеты, ResultSet-ы и Statement-ы в JDBC, и т.д. С очисткой памяти GC в последних JVM справляется довольно неплохо, но вот освобождение других ресурсов, как правило, нельзя делать асинхронно. В противном случае легко получить так называемые "плавающие" ошибки, которые то появляются, то исчезают.
    Над разработкой алгоритма работы GC довольно долго корпели разработчики, так что иногда его поведение может показаться несколько странным. В частности, он может освобождать объекты в произвольном порядке, никак не связанном с порядком их создания или очистки последних ссылок на них. Так же, для примера, в JDK 1.3, GC начинает освобождать объекты только тогда, когда текущий пул памяти заполняется. При этом одновременно, этот пул расширяется, пока не дойдёт до заданного верхнего лимита. Одновременно учитывается время последнего доступа и размер объекта. И т.д. и т.п.
    По умолчанию верхний лимит пула зависит от системы. В JDK 1.3 он равен 64 мегабайтам. В некоторых случаях лучше снизить эту планку, особенно когда на машине памяти не очень много - тем самым программа быстрей дойдёт до этого лимита и начнёт использовать память повторно.
    Большинство JVM не отдают обратно системе память, которую они забрали под пул. Я знаю только одну JVM, которая это делает - это Microsoft JVM. Все остальные хапают до указанного лимита. Деструкторов нет. А что вместо?
    Многие программисты (особенно только что пересевшие с C++), видят замену деструкторов в виде методов finalize. Это не есть правильно. Во первых, этот метод не вызовется, пока на объект имеются ссылки. ............




Нет комментариев.



Оставить комментарий:

Ваше Имя:
Email:
Антибот:  
Ваш комментарий:  



Похожие работы:

Название:Особенности цветного проявления, оценка качества аппаратуры и программного обеспечения
Просмотров:167
Описание: Содержание фотография цветное проявление качество аппаратура 1.Сущность цветной фотографии 2.Особенности качества БРЭА класса Hi-End Список использованной литературы   1.Сущность цветной фотографи

Название:Оценка условий движения на подходах к перекрестку и программа светофорного регулирования
Просмотров:172
Описание: Оценка условий движения на подходах к перекрестку и программа светофорного регулирования Условия движения на подходах к перекрестку № п/п Показатель Подходы 1 Длина контролируемого

Название:Образование Директории и ее программные положения
Просмотров:202
Описание: Контрольная работа по курсу История Украины Тема: «Образование Директории и ее программные положения» Севастополь 2010г. План Введение 1 Образо

Название:Расчет гидропривода многоцелевого сверлильно-фрезерно-расточного станка с числовым программным управлением
Просмотров:90
Описание: Содержание 1. Введение         1.1 Описание гидравлической схемы станка 1.2 Описание механизма расфиксации магазина 1.3 Описание гидропривода механизма расфиксации магазина 2. Расчет и выбор элементов г

Название:Язык Paskal. Основные элементы языка. Структура программы
Просмотров:76
Описание: Содержание   Введение 1. Структура программы 2. Алфавит языка 3. Простейшие конструкции 4. Выражения 5. Типы данных 6. Операции Заключение Литература     Введение Тема реферата "Я

 
     

Вечно с вами © MaterStudiorum.ru