Sdílet prostřednictvím


Single-Threaded a vícevláknová komunikace

Klient nebo server, který podporuje jednovláknové i vícevláknové apartmány, bude mít jeden vícevláknový byt, který obsahuje všechna vlákna inicializovaná jako bezvláknová a jeden nebo více jednovláknových apartmánů. Ukazatele rozhraní musí být zařazovány mezi apartmány, ale mohou být použity bez zařazování v bytě. Volání objektů v apartmánu s jedním vláknem bude synchronizována objekty modelu COM. Volání objektů v vícevláknovém apartmánu nebudou synchronizována objekty modelu COM.

Všechny informace o jednovláknových apartmánech se vztahují na vlákna označená jako model bytu a všechny informace o vícevláknových apartmánech platí pro všechna vlákna označená jako bezvláknová. Pravidla vláken bytu se vztahují na komunikaci mezi apartmány, které vyžadují, aby ukazatele rozhraní byly zařazovány mezi apartmány s voláním CoMarshalInterthreadInterfaceInStream a CoGetInterfaceAndReleaseStream, jak je popsáno v Single-Threaded Apartments.

Poznámka

Při práci s procesovými servery platí některé zvláštní aspekty. Další informace naleznete v tématu In-Process Server Threading Problémy.

 

přístup k rozhraním napříč apartmány

výběr modelu vláken

vícevláknové apartmány

In-Process Problémy s vlákny serveru

procesy, vlákna a apartmány

Single-Threaded Apartmány