Сущность технологии СОМ. Библиотека программиста :: Бокс Дональд
Страница:
504 из 528
Кроме того, если к ячейке не осуществляется доступ через ее СОМ-интерфейсы, то эти 32 байта памяти для vptr вообще не нужны. Это означает, что Excel может просто динамически размещать блоки памяти для vptr , по принципу «ячейка к ячейке» ( cell-by-cell ). Поскольку к большей части ячеек обращения через интерфейсы СОМ не будет никогда, это означает, что фактически в большинстве случаев не будет и затрат на vptr . Этот принцип создания «невесомых» объектов ( flyweight objects), предназначенных для обеспечения поведения по необходимости, является вариантом «отделяемой» ( tearoff ) технологии, которая была впервые предложена в великолепной книге Криспина Госвелла «Сборник рецептов программиста СОМ» (Crispin Goswell. СОМ Programmer's Cookbook ) ( http://www.microsoft.com/oledev ). Обе эти технологии используют отложенное вычисление ( lazy evaluation ) для задержки выделения памяти указателям vptr .
Невесомые и отделяемые элементы являются технологиями разработки СОМ, однако сама СОМ не дает им полномочий и не поддерживает явно. Эти технологии возникли из необходимости эффективно управлять состоянием. При использовании СОМ для разработки распределенных приложений возникают дополнительные проблемы управления состоянием, в том числе исправление распределенных ошибок, безопасность, управление параллелизмом, уравновешивание загрузки и непротиворечивость данных. К сожалению, СОМ ничего не знает о том, как объект управляет своим состоянием, так что она мало может помочь в разрешении этих проблем.
|< Пред. 502 503 504 505 506 След. >|