STA COMコンポーネントをホストするための新しいSTAスレッドを作成する場合、COMに関連するWindowsメッセージを送信するのはそのスレッドの責任です。私が収集できたものから、lock(Monitor.Enter)などの特定の組み込みの.NETスレッドプリミティブは、オブジェクトが別のスレッドによって解放されるのを待っている間、これを行います。私が見た.NETポンプCOMメッセージを作成する別の方法は、.Join()を使用することです。
この動作を備えた組み込みのスレッドプリミティブの完全なリストはどこにありますか?WaitHandleを待つことはこれをサポートしますか?WaitAny()、または.NET 4の新しい同時コレクションについてはどうですか?特定の方法のドキュメントでこれを見つけることができません。