Scelta del modello di threading

La scelta del modello di threading per un oggetto dipende dalla funzione dell'oggetto. Un oggetto che esegue operazioni di I/O estese potrebbe supportare il threading libero per fornire la massima risposta ai client consentendo chiamate di interfaccia durante la latenza di I/O. D'altra parte, un oggetto che interagisce con l'utente potrebbe supportare il threading apartment per sincronizzare le chiamate COM in ingresso con le relative operazioni di finestra.

È più facile supportare il threading di apartment in appartamenti a thread singolo perché COM fornisce la sincronizzazione per ogni chiamata. Il supporto del threading libero è più difficile perché l'oggetto deve implementare la sincronizzazione; Tuttavia, la risposta ai client può essere migliore perché la sincronizzazione può essere implementata per sezioni di codice più piccole.

Accesso alle interfacce tra appartamenti

Appartamenti multithreading

Problemi di threading del server in-process

Processi, thread e appartamenti

Comunicazione a thread singolo e multithreading

Appartamenti a thread singolo