オプションで新しいスレッドを開始し、いくつかの処理を実行してから、オブジェクトで別のメソッドを呼び出すサードパーティ コードを呼び出す必要があります。必要なのは、サードパーティの処理が完了するのを待ってから、元のメソッドから戻ることです。つまり、次のようなクラスがあります (C#):
class MyClass: IThirdPartyInterface {
void MyMethod() {
//some preprocessing
//call a 3rd party static method
ThirdParty.DoSomething(this);
}
void FinishedProcessing() {
//some postprocessing
//???
}
}
DoSomething で開始されたスレッドが実行を終了し、FinishedProcessing メソッドを呼び出した後にのみ戻るように、MyMethod を変更したいと考えています。スレッドはサード パーティのコードによって開始されるため、アクセスできないため、ここでは Thread.Join を使用できません。それで、私は代わりに何をしますか?