Подход на уровне компонентов
Подход на уровне компонентов
(Этот раздел описывает решение, полезное только для специального случая; его можно пропустить при первом чтении книги.)
Перед тем как перейти к амбициозным схемам, таким как автоматическая сборка мусора, стоит посмотреть на решение, которое может быть альтернативой предыдущему, исправляя некоторые его недостатки.
Это решение применимо только для ОО-программирования "снизу-вверх", где структуры данных создаются не для нужд конкретной программы, а строятся как повторно используемые классы.
Что предлагает ОО-подход по отношению к управлению памятью? Одна из новинок скорее организационная, чем техническая: в этом подходе большое внимание уделяется повторному использованию библиотек. Между разработчиками приложения и создателями системных средств - компилятора и среды разработки - стоит третья группа людей, отвечающих за написание повторно используемых компонентов, реализующих основные структуры данных. Членов третьей группы, которые, конечно могут иногда выступать и в двух других ипостасях, принято называть производителями компонентов (component manufacturers).
Производители компонентов имеют полный контроль над любым использованием данного класса и потому находятся в лучшем положении при поиске приемлемого решения проблемы управления памятью для всех экземпляров этого класса.
Если модель размещения и удаления объектов класса достаточно проста, разработчики компонентов могут найти эффективное решение, возможно, даже не требующее специальной подпрограммы reclaim. Они могут выразить все в терминах понятий высокого уровня. Это и называется подходом на уровне компонентов.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
4.27 Замечания об уровне связи данных
4.27 Замечания об уровне связи данных Доля датаграмм, управляющих информацией, оказывает влияние на общую производительность. Разумеется, когда нужно переслать в сети большой объем данных, лучше заполнять датаграммы как можно плотнее.Для разных типов сетей максимальные
На высшем уровне
На высшем уровне В мае 2010 года технология Punycode обрела воплощение в самых верхних доменных рядах. Появились первые многоязычные «официальные» домены верхнего уровня (арабские и кириллические).Перед этим Punycode, по заданию ICANN, тщательно испытали в лабораториях и выяснили,
Объекты на уровне понятий
Объекты на уровне понятий Если вам трудно ассоциировать объекты с графическими элементами, ячейками рабочего листа или кнопками панели инструментов, представляйте себе объекты как материальные предметы. Вы же можете представить, как вырезаете ножницами из листа бумаги
Редактирование на уровне таблицы
Редактирование на уровне таблицы Существуют два уровня редактирования таблицы: уровень таблицы и уровень ячейки. В обоих случаях необходимо использовать управляющие маркеры. Вы можете просто щелкнуть на любой линии таблицы, чтобы отобразились маркеры управления на
7.4. Разделение процессов на уровне проектирования
7.4. Разделение процессов на уровне проектирования Рассмотрим конкретные рекомендации по использованию описанных выше методов.Прежде всего, необходимо отметить, что временные файлы, более интерактивный способ связи главного/подчиненного процессов, сокеты, RPC и все
Редактирование на уровне сегментов
Редактирование на уровне сегментов Редактирование сплайнов на уровне сегментов позволяет выполнить следующие операции:• Detach (Отделить) – отделяет сегменты, преобразуя их в самостоятельные формы;• Delete (Удалить) – удаляет сегменты;• Divide (Разделить) – добавляет
Редактирование на уровне сплайнов
Редактирование на уровне сплайнов Чтобы отредактировать сплайн на уровне входящих в его состав сплайнов, нужно перейти на уровень подобъектов Spline (Сплайн), щелкнув в стеке модификаторов на соответствующей строке. Выделенный подобъект будет окрашен красным цветом.При
Редактирование на уровне Vertex (Вершина)
Редактирование на уровне Vertex (Вершина) Уровень подобъектов Vertex (Вершина) используется для тщательной, «ручной» доводки формы модели, позволяя пользователю работать с поверхностью объекта примерно так, как это делает скульптор.Для выделения вершин используются обычные
Редактирование на уровне Edge (Ребро)
Редактирование на уровне Edge (Ребро) Ребра можно перемещать, поворачивать и масштабировать примерно таким же образом, как и вершины, хотя есть и некоторые отличия.Для поворота ребер можно применить инструмент Select and Rotate (Выделить и вращать), а можно использовать
Редактирование на уровне Face (Грань)
Редактирование на уровне Face (Грань) Команды редактирования граней меняют свойства объекта, включая затенение, сглаживание, видимость, назначение материалов, а также структуру. Данный уровень содержит такие команды:• Bevel (Выдавить со скосом) – создает прямую фаску,
Блокировка на уровне таблицы
Блокировка на уровне таблицы Транзакция может быть сконфигурирована для блокирования всей таблицы. Существует два приемлемых способа сделать это в DSQL: установив уровень изоляции транзакции в SNAPSHOT TABLE STABILITY (известный также как согласованный режим, поддерживаемый
Блокировка на уровне таблицы
Блокировка на уровне таблицы Уровень изоляции транзакции TABLE STABILITY (или согласованная изоляция) предоставляет полную блокировку таблицы по записи, включая зависимые таблицы. Этот уровень слишком агрессивен для интерактивных приложений.Более предпочтительным является
Редактирование на уровне таблицы
Редактирование на уровне таблицы Существует два уровня редактирования таблицы: уровень таблицы и уровень ячейки. В обоих случаях необходимо использовать управляющие маркеры.Вы можете просто щелкнуть на любой линии таблицы, чтобы отобразились маркеры управления на
Уклонение на уровне пакетов
Уклонение на уровне пакетов На сетевые системы обнаружения вторжения возложена малопонятная задача выявления смысла из буквально миллионов ежесекундно поступающих кусочков информации при обеспечении приемлемого времени реакции (обычно желательно обеспечить время
Уклонение на уровне приложений
Уклонение на уровне приложений У датчиков системы обнаружения вторжения есть возможность исследовать внутреннее устройство протокола связи приложений в интересах обнаружения вторжения. Разработчики систем обнаружения вторжения используют два основных способа.