Atributo do modelo de threading
COM+ gerencia threads para você. Cada componente COM tem uma propriedade ThreadingModel que você pode especificar ao desenvolver o componente. Essa propriedade determina como os objetos do componente são atribuídos a threads para execução do método.
Você pode usar a ferramenta administrativa Serviços de Componentes para exibir a propriedade de modelo de threading clicando com o botão direito do mouse em um componente na pasta Componentes, clicando em Propriedades e clicando na guia Simultaneidade. Em Modelo de threading, os valores possíveis são os seguintes:
- Apartamento Main Thread
- Apartamento Single Thread
- Apartamento Free Thread
- Apartamento Neutro
- Qualquer Apartamento
O modelo de rosca preferido para COM+ é o apartamento neutro. No entanto, se você não especificar um modelo de threading para seu componente, COM+ usa o apartamento de thread principal, que é o padrão.
Observação
Para obter informações mais detalhadas, consulte Escolhendo o modelo de threading.
A tabela a seguir mostra o modelo de programação para apartamentos em COM+.
Modelar | Apartamento | Grátis | Ambos | Neutro | Não especificado |
---|---|---|---|---|---|
Single-threaded, não principal | Criado no apartamento atual | Criado em apartamento multithreaded | Criado no apartamento atual | Criado em apartamento neutro | Criado em apartamento principal roscado |
Single-threaded, principal | Criado no apartamento atual | Criado em apartamento multithreaded | Criado no apartamento atual | Criado em apartamento neutro | Criado no apartamento atual |
Multithread | Criado em apartamento host single-threaded | Criado em apartamento multithreaded | Criado em apartamento multithreaded | Criado em apartamento neutro | Criado em apartamento principal roscado |
Neutro (na rosca STA) | Criado no host single-threaded apartment para este thread | Criado em apartamento multithreaded | Criado em apartamento neutro | Criado em apartamento neutro | Criado em apartamento principal roscado |
Neutro (na linha MTA) | Criado em apartamento host single-threaded | Criado em apartamento multithreaded | Criado em apartamento neutro | Criado em apartamento neutro | Criado em apartamento principal roscado |
Tópicos relacionados