Problemy z wydajnością FireMonkey
Używam Delphi XE2 z poprawką 4 aktualizacji 1
Moja domyślna aplikacja FMX jest bardzo powolna, a na razie przez jakiś czas jest mroźna. Np .: gdy klikam przycisk, cała aplikacja zawiesza się na kilka sekund (ale tylko do pierwszego wykonania tego zdarzenia). Pomyślałem, że może to być problem z GPU i edytowałem domyślne ustawieniaDpr plik jako;
uses
FMX.Forms, fmx.Types,..
{$R *.res}
begin
Application.Initialize;
GlobalUseHWEffects := False ;
GlobalUseDirect2D := False ;
GlobalUseDirect2DSoftware := False ;
GlobalUseGDIPlusClearType := True ;
GlobalDisableFocusEffect := True ;
Application.CreateForm(...);
Application.Run;
end.
Teraz działa tak, jak oczekiwałem bez żadnego problemu, ale użycie procesora jest takie samo jak poprzednio (25% podczas przesuwania myszy)
Następnie zmodyfikowałem mój kod jako
GlobalUseHWEffects := true ;
GlobalUseDirect2D := False ;
GlobalUseDirect2DSoftware := False ;
GlobalUseGDIPlusClearType := True ;
GlobalDisableFocusEffect := True ;
Teraz wszystko działa płynnie, tylko niewielkie opóźnienie czasu statupu i użycie procesora jest bardzo niskie (0 - 2%). (Dlatego potrzebuję Firemonkey)
teraz wszystkie elementy sterujące działają zgodnie z oczekiwaniami, z wyjątkiem paska menu, powyższe ustawienia nie są stosowane do paska menu i działa z zachowaniem domyślnym (cała aplikacja zawiesza się na kilka sekund).
Co mogę zrobić, aby przezwyciężyć ten problem.