Потоковые модели. Однопоточная модель

   
На этом шаге мы рассмотрим механизм функционирования однопоточной модели.

   
В CОМ-сервере, поддерживающем однопоточную модель (single-threading model)
все клиентские запросы методов ставятся в очередь единственного потока. Такие серверы пригодны только для
однопоточных приложений, то есть для старых программ. Доступ к однопоточному компоненту очень эффективен
для создавшего его потока, ведь он получает прямые указатели на поддерживаемые им интерфейсы. Однако запросы
других потоков не в состоянии напрямую обращаться к указателям интерфейса - сервер поддерживает только один
поток. Все остальные должны прибегнуть к маршалингу между представителем клиента и заглушкой в основном
потоке сервера. Запросы из внешних потоков через представитель/заглушку помещаются в очередь сообщений сервера.
Производительность внешних потоков существенно снижается за счет издержек маршалинга, а также того, что
приоритет прямых запросов из "своего" потока выше и способен подавлять внешние запросы.

   
На следующем шаге мы рассмотрим модель разделенных потоков.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

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