多くの反復、行列演算などを含む非常に複雑なアルゴリズムを実装する必要があります。フーリエ級数近似には 2 つの主要なループがあります。プログレスコールバックを実装するための最良のアプローチは何かを知りたいです。私は将来、このアルゴリズムを WPF アプリで使用したいと考えており、進行状況バーを実装したいと考えています。将来、プログレスバーの実装を容易にするためのアルゴリズムをどのように準備しますか?
私は次のようなことを考えています:
static void Main(string[] args)
{
Console.Write("Progres... ");
Alg((i) => UpdateProgress(i));
}
public static void UpdateProgress(int iteration)
{
string anim = @"|/-\-";
Console.SetCursorPosition(Console.CursorLeft - 1, Console.CursorTop);
Console.Write(anim[iteration%5]);
}
public static void Alg(Action<int> progressCallback)
{
for (int i = 0; i < 100; i++)
{
Thread.Sleep(50);
progressCallback(i);
}
}