Attribut de modèle threading
COM+ gère les threads pour vous. Chaque composant COM a une propriété ThreadingModel que vous pouvez spécifier lorsque vous développez le composant. Cette propriété détermine comment les objets du composant sont affectés aux threads pour l’exécution de la méthode.
Vous pouvez utiliser l’outil d’administration Services de composants pour afficher la propriété threading-model en cliquant avec le bouton droit sur un composant dans le dossier Composants , en cliquant sur Propriétés, puis sur l’onglet Concurrence . Sous Modèle de thread, les valeurs possibles sont les suivantes :
- Principal Thread Apartment
- Single Thread Apartment
- Free Thread Apartment
- Appartement neutre
- N’importe quel appartement
Le modèle de threadage préféré pour COM+ est l’appartement neutre. Toutefois, si vous ne spécifiez pas de modèle de thread pour votre composant, COM+ utilise l’appartement de threads main, qui est la valeur par défaut.
Notes
Pour plus d’informations, consultez Choix du modèle de thread.
Le tableau suivant montre le modèle de programmation des appartements dans COM+.
Modèle | Appartement | Gratuit | Les deux | Neutre | Non spécifié |
---|---|---|---|---|---|
Thread unique et non main | Créé dans l’appartement actuel | Créé dans un appartement multithread | Créé dans l’appartement actuel | Créé dans un appartement neutre | Créé dans main’appartement threaded |
Monothread, main | Créé dans l’appartement actuel | Créé dans un appartement multithread | Créé dans l’appartement actuel | Créé dans un appartement neutre | Créé dans l’appartement actuel |
Multithread | Créé dans l’appartement monothread de l’hôte | Créé dans un appartement multithread | Créé dans un appartement multithread | Créé dans un appartement neutre | Créé dans main’appartement threaded |
Neutre (sur le thread STA) | Créé dans l’appartement monothread de l’hôte pour ce thread | Créé dans un appartement multithread | Créé dans un appartement neutre | Créé dans un appartement neutre | Créé dans main’appartement threaded |
Neutre (sur le thread MTA) | Créé dans l’appartement monothread de l’hôte | Créé dans un appartement multithread | Créé dans un appartement neutre | Créé dans un appartement neutre | Créé dans main’appartement threaded |
Rubriques connexes