Odświeżanie wykresów,
public System.Timers.Timer myTimer = new System.Timers.Timer(20);
CompositionTarget.Rendering += this.CompositionTarget_Rendering;
a wewnatrz CompositionTarget_Rendering() mam:
if (TestStart) { IfDelayedPlotStart(); }
if (UpdatePlots)
{
if (TimerStart == 1)
{
dtFromAll = DateTime.Now;
myTimer.AutoReset = true;
myTimer.Elapsed += this.UpdatePlotData;
myTimer.Start();
TimerStart = 0;
}
}
Timer wywowłuje (this.UpdatePlotData) pobranie danych z serwera który wywysła dane
i graficzne wykresu który wyświetla dana wartość
this.models[i].PlotModel.InvalidatePlot(true);
Wiem że mimo że jest w miarę spoko to nadal coś tutaj nie bangla dobrze ze synchronizacją.
Cel: Chciałbym mieć poprawnie odświeżające się wykresy z odpowiednią powtarzalnością.
Myslałem że poprawa bedzie gdy dojdę do stanu:
Chciałbym żeby to co wywyołuje Timer działało synchronicznie czyli UpdatePlotData jedno się skończy to następne działa (ewentualnie inne rozwiązanie które propnujecie zamiast Timera by osiągnąć cel.)