AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Wie kann man CPU-Zeit/Energie sparen?

Ein Thema von sh17 · begonnen am 18. Mär 2021 · letzter Beitrag vom 18. Mär 2021
Antwort Antwort
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.549 Beiträge
 
Delphi 10.4 Sydney
 
#1

Wie kann man CPU-Zeit/Energie sparen?

  Alt 18. Mär 2021, 13:48
Mir fehlt gerade die richtige Anlaufstelle.

Wenn ich in einer Komponente eine Animation oder was auch immer mache, was regelmäßig CPU und Energie kostet - wie kann ich erkennen, ob meine Anwendung/Komponente
gerade sichtbar ist? Evtl ist ja meine Anwendung minimiert, das Fenster verdeckt oder der Bildschirm deaktiviert, oder meine Anwendung befindet sich in was weiß ich für
einen Nichtstun-Modus. Was wäre der richtige Weg so etwas zu erkennen und auf Ebene einer UI-Komponente darauf zu reagieren?

Konkret geht es auch um das hier:

https://github.com/norgepaul/TChromeTabs/issues/92
Sven
--
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
2.811 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#2

AW: Wie kann man CPU-Zeit/Energie sparen?

  Alt 18. Mär 2021, 14:07
Probiere mal so:
https://devblogs.microsoft.com/oldne...2-00/?p=103507
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
5.716 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Wie kann man CPU-Zeit/Energie sparen?

  Alt 18. Mär 2021, 15:27
Ich hätte Windows jetzt für so schlau gehalten dass dein Fenster auch nur Anweisungen (WM_PAINT?) bekommt sich neu zu zeichnen, wo es auch Sinn macht.

Wenn du in einem Timer oder ähnlichem natürlich dauerhaft Berechnungen laufen hast auch wenn niemand sie braucht...
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.549 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Wie kann man CPU-Zeit/Energie sparen?

  Alt 18. Mär 2021, 16:22
Das denke ich auch, das Windows bei WM_PAINT so schlau ist. Ich muss mich nur noch etwas mehr in TChromeTabs einlesen, bevor ich da alle Ecken kenne, speziell, warum das über einen Thread gelöst wurde.

Ich hab hier noch was gefunden

https://stackoverflow.com/questions/...rently-visible

Mit dem Vorschlag von TiGü und dem Link hab ich es erst mal abgefangen.
Sven
--
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.061 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Wie kann man CPU-Zeit/Energie sparen?

  Alt 18. Mär 2021, 17:20
Wie wäre es, bei Windows zumindest, mit einer GetForegroundWindow() Prüfung in regelmäßigen Abständen bzw als Kondition in Deinem "Mal-was" Thread?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +2. Es ist jetzt 01:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf