非常に長時間実行され、ログ ファイルに書き込むメソッドがあります。このように設定されています
public class PSOHelper
{
public PSOHelper(string[] params)
{
//set up params here
}
public async void RunApp(string runType)
{
//long running application that writes to a text file
}
}
次に、メイン プログラムでこのメソッドを次のように呼び出します。
public async Task<bool> PreparePSOAndRunPSO()
{
string[] params;
//code to fetch the parameters
PSOHelper psoH = new PSOHelper (params)
try
{
await Task.Run(() =>
{
psoH.RunApp(RunConfig.RunMode);
});
return true;
}
catch( Exception ex)
{
Helper.log.Error("exception starting PSO", ex);
return false;
}
}
ここで、Main メソッドで PreparePSOAndRunPSO を呼び出し、その後、RunApp に書き込まれているログから、PreparePSOAndRunPSO が終了するまで while ループで読み取ります。これを行う正しい方法は何ですか?