Choix du modèle de thread

Le choix du modèle de thread pour un objet dépend de la fonction de l’objet. Un objet qui effectue des E/S étendues peut prendre en charge le thread libre pour fournir une réponse maximale aux clients en autorisant les appels d’interface pendant la latence des E/S. En revanche, un objet qui interagit avec l’utilisateur peut prendre en charge le threading d’appartement pour synchroniser les appels COM entrants avec ses opérations de fenêtre.

Il est plus facile de prendre en charge le thread d’appartement dans les appartements à thread unique, car COM fournit la synchronisation par appel. La prise en charge du thread libre est plus difficile, car l’objet doit implémenter la synchronisation; Toutefois, la réponse aux clients peut être meilleure, car la synchronisation peut être implémentée pour des sections plus petites du code.

Accès aux interfaces entre appartements

Appartements multithreads

Problèmes de thread de serveur dans le processus

Processus, threads et appartements

Communication à thread unique et multithread

Appartements à thread unique