Bagikan melalui


Komunikasi Berutas Tunggal dan Multithreaded

Klien atau server yang mendukung apartemen berulir tunggal dan multithreaded akan memiliki satu apartemen multithread, yang berisi semua utas yang diinisialisasi sebagai utas bebas, dan satu atau beberapa apartemen berulir tunggal. Penunjuk antarmuka harus dinaikkan antar apartemen tetapi dapat digunakan tanpa marshaling di dalam apartemen. Panggilan ke objek di apartemen berulir tunggal akan disinkronkan oleh COM. Panggilan ke objek di apartemen multithreaded tidak akan disinkronkan oleh COM.

Semua informasi tentang apartemen berulir tunggal berlaku untuk utas yang ditandai sebagai model apartemen, dan semua informasi tentang apartemen multithreaded berlaku untuk semua utas yang ditandai sebagai utas bebas. Aturan utas apartemen berlaku untuk komunikasi antar-apartemen, mengharuskan penunjuk antarmuka dirusak antara apartemen dengan panggilan ke CoMarshalInterThreadInterfaceInStream dan CoGetInterfaceAndReleaseStream, seperti yang dijelaskan dalam Apartemen Single-Threaded.

Catatan

Beberapa pertimbangan khusus berlaku saat berhadapan dengan server dalam proses. Untuk informasi selengkapnya, lihat Masalah Utas Server Dalam Proses.

 

Mengakses Antarmuka Di Seluruh Apartemen

Memilih Model Threading

Apartemen Multithreaded

Masalah Utas Server Dalam Proses

Proses, Utas, dan Apartemen

Apartemen Single-Threaded