Категория
Информатика
Тип
реферат
Страницы
10 стр.
Дата
17.07.2013
Формат файла
.doc — Microsoft Word
Архив
785331.zip — 39.98 kb
  • razrabotka-prilozhenij-v-ramkax-comdcom-texnologii_785331_1.doc — 128.5 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

интерфейсы. Если объект не реализует диспетчерский интерфейс, то следом за IUnkown непосредственно следуют ссылки на методы пользовательских интерфейсов, то есть, становится возможно обращение к методам и свойствам объектов непосредственно через ссылки из vtable.

В случае если сервер имеет библиотеку типов и реализует диспетчерский интерфейс, то клиент может получить информацию из библиотеки типов, без осуществления вызова функций через привязки. Достаточно получить идентификаторы dispID диспетчерского интерфейса, и осуществить привязку непосредственно к vtable. Таким образом, можно осуществить более быстрый доступ к ресурсам объекта, осуществляя прямой вызов через ссылки  в vtable, не используя диспетчерский интерфейс. Код непосредственной привязки к vtable может быть автоматически сгенерирован на этапе компиляции. Разумеется, такой метод вызова функций гораздо быстрее, чем методы привязки идентификаторов (т.к. вызов осуществляется через Invoke, что вызывает процедуры упаковки/распаковки параметров) и позднего связывания (т.к. осуществляется полный цикл работы с диспетчерским интерфейсом).

2.11.Двойные интерфейсы

Несмотря на то, что COM предоставляет возможность обращения к ресурсам серверов используя vtable-интерфейсы, что повышает скорость взаимодействия клиента и сервера, некоторые клиенты могут быть разработаны таким образом, что обращаются к объектам только через интерфейс диспетчеризации. Это могут быть, например, интерпретируемые макроязыки, которые включают в себя средства для работы с COM-объектами, и в которых не реализованы возможности для привязки к vtable. Таким образом, COM предлагает то, что называется двойственным, или двойным интерфейсом (dual interface). Двойные интерфейсы предлагают два пути для доступа к ресурсам сервера: через диспетчерский интерфейс и через vtable-интерфейс. Двойной интерфейс определяется как наследник IDispatch.



Ваше мнение



CAPTCHA