다음을 통해 공유


Single-Threaded 및 다중 스레드 통신

단일 스레드 및 다중 스레드 아파트를 모두 지원하는 클라이언트 또는 서버에는 무료 스레드로 초기화된 모든 스레드와 하나 이상의 단일 스레드 아파트가 포함된 다중 스레드 아파트가 하나 있습니다. 인터페이스 포인터는 아파트 간에 마샬링되어야 하지만 아파트 내에서 마샬링하지 않고도 사용할 수 있습니다. 단일 스레드 아파트의 개체에 대한 호출은 COM에서 동기화됩니다. 다중 스레드 아파트의 개체에 대한 호출은 COM에서 동기화되지 않습니다.

단일 스레드 아파트에 대한 모든 정보는 아파트 모델로 표시된 스레드에 적용되며 다중 스레드 아파트에 대한 모든 정보는 자유 스레드로 표시된 모든 스레드에 적용됩니다. 아파트 간 통신에 아파트 스레딩 규칙이 적용되며, 단일 스레드 아파트에 설명된 대로 CoMarshalInterThreadInterfaceInStreamCoGetInterfaceAndReleaseStream에 대한 호출을 사용하여 아파트 간에 인터페이스 포인터를 마샬링해야 합니다.

참고

프로세스 내 서버를 처리할 때 몇 가지 특별한 고려 사항이 적용됩니다. 자세한 내용은 In-Process 서버 스레딩 문제를 참조하세요.

 

아파트 간 인터페이스 액세스

스레딩 모델 선택

다중 스레드 아파트먼트

In-Process 서버 스레딩 문제

프로세스, 스레드 및 아파트

단일 스레드 아파트먼트