AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Ursache für dauerhafte CPU-Auslastung finden

Ursache für dauerhafte CPU-Auslastung finden

Ein Thema von CodeX · begonnen am 8. Feb 2021 · letzter Beitrag vom 10. Mär 2021
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.400 Beiträge
 
Delphi 12 Athens
 
#1

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 11. Feb 2021, 10:06
Zitat:
Aber theoretisch könnte es ja auch als "0" ...
Neeee neee neeee, alle Programmierer sind ja intelligent und verwenden vorhandene Konstanten, anstatt irgendwelcher wilder Magicvalues.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Sinspin
Sinspin

Registriert seit: 15. Sep 2008
Ort: Dubai
725 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 14. Feb 2021, 14:45
Dein Programm ist in SysTray minimiert wenn das Auftritt. Nur dann hast du CPU load? Oder auch wenn das Programm sichtbar ist?
...Ich kann mich erinnern das ich früher mal eine SysTray Komponente in Verwendung hatte die CPU verbraten hat wenn man die Animationsfunktion für das angezeigt Icon aktiviert hat.
Irgendwann bin ich dann auf eine andere umgestiegen oder das Verhalten war nach einer Aktualisierung weg. Ich kann mich aber nicht mehr erinnern.
Stefan
Nur die Besten sterben jung
A constant is a constant until it change.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.075 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 23. Feb 2021, 08:24
Wie ist das denn ausgegangen?
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#4

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 9. Mär 2021, 18:48
Wie ist das denn ausgegangen?
Tut mir leid für die sehr späte Rückmeldung...
AQTime hatte mich nur bedingt weitergebracht. Da es leider nur Laufzeiten und nicht irgendeine Form von Auslastung misst (zumindest habe ich nichts dergleichen gefunden), hatte ich darin nur als Bestätigung erkennen können, welche Threads dauerhaft laufen. Das hatte ich im Grunde auch vorher schon eingrenzen können, aber nun hatte ich zumindest eine Art Bestätigung. Die dauerhaften Threads gehören zu Dritt-Komponenten und sind fast alle auch harmlos gewesen. Bspw. hat VirtualTreeView einen dauerhaften WorkerThread, der aber wirklich nur etwas tut, wenn es was zu tun gibt. Die Ursache lag nach einigem Hin und Her in einer Komponente, die im Thread einen Timer startet und dieser zeichnet die Komponente neu, um diverse Animationen darin abbilden zu können. Testweises Deaktivieren des darin enthaltenen Timers entfernte auch die beobachtete CPU-Auslastung vollständig. Da die Ursache nicht im Hauptprogramm liegt, brauche ich da aber erstmal nichts dran weiterzumachen, sondern habe das entsprechend weitergereicht.
Ich bin hauptsächlich froh darüber, dass es nicht an den Messages o.ä. liegt.
Vielen Dank an alle für die Unterstützung!
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.075 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 10. Mär 2021, 07:48
Danke für die Rückmeldung.
Zitat von CodeX:
Die Ursache lag nach einigem Hin und Her in einer Komponente, die im Thread einen Timer startet und dieser zeichnet die Komponente neu, um diverse Animationen darin abbilden zu können.
Man beachte, wie zutreffend im Nachhinein das Glaskugel-Raten aus Beitrag #10 und #11 waren.

Um welche Dritt-Komponente handelt es sich denn?
Könnte hilfreich sein für spätere Generationen, die hier per Google drüber stolpern.
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.495 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 10. Mär 2021, 15:29
Danke CodeX, dass Du so hartnäckig dran geblieben bist. Ich finde das Thema wichtig.
Schaut auch mal das an:
https://www.youtube.com/watch?v=R1iH-SqgbZg
Ich finde es gibt inhaltlich einige Mängel, aber die Zielrichtung sollte klar sein.
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#7

AW: Ursache für dauerhafte CPU-Auslastung finden

  Alt 10. Mär 2021, 16:12
Danke für die Rückmeldung.
Zitat von CodeX:
Die Ursache lag nach einigem Hin und Her in einer Komponente, die im Thread einen Timer startet und dieser zeichnet die Komponente neu, um diverse Animationen darin abbilden zu können.
Man beachte, wie zutreffend im Nachhinein das Glaskugel-Raten aus Beitrag #10 und #11 waren.

Um welche Dritt-Komponente handelt es sich denn?
Könnte hilfreich sein für spätere Generationen, die hier per Google drüber stolpern.
Die Komponente ist TChromeTabs.
Glaskugel-Raten ist natürlich ganz nett, aber wir spielen hier nicht Bingo, sondern entwickeln Software ... ähem.
Mir ging es ja von Anfang an darum, ob man die Ursache irgendwie systematisch ermitteln kann. Wenn es wie hier nicht mal den eigenen Code betrifft, ist es eben umso schwerer. Wie gesagt war AQTime dafür zumindest im Ansatz nicht verkehrt, wobei leider nur Laufzeiten und nicht Aktionen gemessen werden. Falls ich etwas übersehen habe, bitte sagen, da man das ja eventuell in der Zukunft wieder gebrauchen könnte.

Danke CodeX, dass Du so hartnäckig dran geblieben bist. Ich finde das Thema wichtig.
Schaut auch mal das an:
https://www.youtube.com/watch?v=R1iH-SqgbZg
Ich finde es gibt inhaltlich einige Mängel, aber die Zielrichtung sollte klar sein.
Die Stunde habe ich gerade leider nicht, aber die Grundaussage kann ich natürlich bestätigen. Eigentlich ist es nicht mal so wichtig, ob es einem persönlich um Umwelt, Performance oder Effizienz geht, aber schon der gesunde Menschenverstand sollte einem sagen, dass eine dauerhafte CPU-Auslastung ohne jegliche (gewollte) Aktivität beseitigt werden sollte. Daher bin ich tatsächlich umso überraschter, wenn andere sagen "sind doch nur 2%, ist doch egal".
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
  Mit Zitat antworten Zitat
Antwort Antwort

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 +1. Es ist jetzt 16:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz