COM+ 대기 구성 요소 레코더는 프로세스의 MTA(다중 스레드 아파트) 또는 STA(단일 스레드 아파트)에서 실행할 수 있습니다. 레코더가 STA에서 실행될 때, COM+에서는 개체를 포함하는 각 아파트에 동일한 프로세스 내의 다른 프로세스 및 아파트의 호출을 처리하기 위해 메시지 대기열 큐가 있어야 합니다. 즉, 스레드의 작업 함수에는 메시지 루프가 있어야 합니다. 대기 중인 구성 요소가 인스턴스화되면 반환되는 인터페이스 포인터는 항상 직접 인터페이스 포인터가 아닌 프록시 인터페이스 포인터입니다. 포인터는 실제로 레코더 인스턴스에 대한 참조입니다. 이 녹음기 인터페이스 참조가 다른 스레드에 전달되는 경우, 수신 스레드가 인터페이스를 역직렬화할 수 있도록 원래 스레드가 계속해서 Windows 메시지 루프를 실행해야 합니다. 그렇지 않은 경우 수신 스레드는 CoUnmarshalInterface호출에서 중단됩니다.
기본 형식을 사용하여 스레드를 동기화하는 경우 다른 동기화 함수 대신 MsgWaitForMultipleObjects 사용하는 것이 좋습니다. 이렇게 하면 큐의 메시지와 동기화 개체의 상태를 확인합니다.