0

非常に長時間実行され、ログ ファイルに書き込むメソッドがあります。このように設定されています

      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 ループで読み取ります。これを行う正しい方法は何ですか?

4

1 に答える 1