Шаг 163.
Среда программирования Visual C++.
Архитектура СОМ. Модель разделенных потоков. Однопоточные отделения

    На этом шаге мы рассмотрим однопоточные отделения.

    В однопоточном отделении (STA) имеется только один поток, занимающиийся созданием и вызовом СОМ-объектов. Это гарантирует эффективную синхронизацию объектов такого отделения.

    По сравнению с однопоточной моделью производительность поддерживающих STA компонентов выше, поэтому эта модель позволяет писать более эффективный код. Пока в одном STA поток ожидает завершения операции, промежуточные операции выполняются в другом STA.

    STA создается потоком при вызове API-функции CoInitializeEx() с параметром COINIT_APARTMENTTHREADED. Поток, инициализированный как STA, называется STA-потоком. Созданные им СОМ-объекты доступны только ему. Это предохраняет от одновременного обращения к объектам из нескольких потоков.

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




Предыдущий шаг Содержание Следующий шаг