Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Modele wątkowe COM+ są projektowane wokół kolekcji obiektów nazywanej mieszkaniem. Mieszkanie jest kolekcją kontekstów zawartych w procesie, jak pokazano na poniższej ilustracji.
Połączenia w mieszkaniu są bezpośrednie, podczas gdy połączenia między apartamentami (poza procesem) są pośrednie i wymagają kodu proxy i wycinków. Apartamenty w oprogramowaniu umożliwiają obiekty z różnymi właściwościami synchronizacji i ponownego wchodzenia oraz mają dwie kategorie: jednowątkowe i wielowątkowe. Obiekty w modelu STA na pojedynczym wątku działają na określonym wątku, w którym zostały utworzone. STA zezwalają na wykonywanie tylko jednej metody jednocześnie. Są one przeznaczone dla interfejsów użytkownika i polegają na kolejce komunikatów systemu Microsoft Windows do przetwarzania wywołań przychodzących.
Obiekty w wielowątkowym modelu (MTA) są wykonywane w dowolnym wątku i umożliwiają równoczesne wykonanie dowolnej liczby metod. MTAs obsługują ponowne wejście domyślnie.
Klasy COM+ są oznaczone właściwością ThreadingModel, która umożliwia modelu COM+ utworzenie obiektu we właściwym mieszkaniu. Aby określić, w którym mieszkaniu jest tworzony obiekt, CoCreateInstance używa właściwości ThreadingModel.
Wątki muszą najpierw wywołać CoInitializeEx, zanim będą mogły korzystać z modelu COM+. Spowoduje to utworzenie ich w odpowiednim mieszkaniu i kontekście. Główne mieszkanie wątku jest określane jako pierwszy STA wywoływany przez CoInitializeEx. Jest to zwykle skojarzone z głównym wątkiem procesu. CoInitializeEx wskazuje typ mieszkania wymaganego przez wątek, ustawiając następujące flagi:
- COINIT_MULTITHREADED— umieszcza wątek w pojedynczym apartamencie wielowątkowym.
- COINIT_APARTMENTTHREADED— umieszcza wątek w nowym stacie.
Poniższe tematy w tej sekcji zawierają więcej informacji na temat korzystania z modeli wątków i mieszkań w modelu COM+:
- atrybut modelu wątkowania
- neutralne apartamenty
Tematy pokrewne