AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Timer/Programm Priorität

Ein Thema von flomei · begonnen am 18. Mär 2003 · letzter Beitrag vom 20. Mär 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#1

Timer/Programm Priorität

  Alt 18. Mär 2003, 16:29
Ich weiss, dass Timer eine sehr niedrige Priorität haben. Kann man das ändern? Stelle man sich folgendes vor: Der Timer muss sofort auf ein Ereignis reagieren. Manchmal dauert es ar***lange, bis mein Timer reagiert.
Oder überhaupt mein ganzes Programm. Das muss auch funktionieren, wenn mehrere Prozesse im Hintergrund laufen.
Man stelle sich folgendes vor: Ein Programm soll alles speichern, was geöffnet ist und dann den Rechner herunterfahren wenn der Lüfter kaputt ist und die CPU Temperatur sprunghaft ansteigt. Würde der Timer bei Vollauslastung auch nur zwei, drei Sekunden zu spät reagieren wäre vielleicht eine Menge Arbeit verloren und der Rechner kaputt. Das Programm hätte das vielleicht verhindern können. Ich hoffe jedem ist jetzt klar was ich mit Priorität meine.
Hat einer eine Idee?

Thx!

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Benutzerbild von Chriss
Chriss

Registriert seit: 6. Aug 2002
Ort: Ahlen
124 Beiträge
 
Delphi 7 Enterprise
 
#2
  Alt 18. Mär 2003, 19:21
ich weiss ja nicht, aber eigentlich sollte der rechner ausgehen, wenn die CPU ZU heiss wird, jedenfalls meine ich, dass so gelernt zu haben
was du aber noch willst ist, dass alles gespeichert wird...
WAS soll gespeichert werden?! einige Programme brauchen ihre Zeit, bis der Speichervorgang beendet ist, besonders bei aufwendigeren...
I'll be right there - I'll never leave - All I ask of you is ~ Believe
(Christopher Michael Oliva ~ 1963-1993 [Savatage]
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Timer/Programm Priorität

  Alt 18. Mär 2003, 19:26
Zitat von flomei:
Ich weiss, dass Timer eine sehr niedrige Priorität haben. Kann man das ändern?
Nein. Und wenn, wüßte ich nicht wie.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Darty
Darty

Registriert seit: 8. Jun 2002
Ort: Kronau
731 Beiträge
 
#4
  Alt 18. Mär 2003, 19:32
Kauf Dir einen Asus Board Der hat so ne C.O.P. Funktion der dann bei bestimmten Grad ausschaltet.
Aber nur damit ich jetzt besser verstehe. Timer haben niedrige Prioritäten ? Meinst du möchtest Dein Programm vor allen anderen Programmen die laufen als "wichtig" hinstellen oder ? Wenn ja, dann leiden die anderen Programmen aber darunter ..
Matthias Knebel
Mfg M. Knebel [-Darty-]
- Gehörlose Delphianer gibt es selten -
www.team-knebel.de
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5
  Alt 18. Mär 2003, 19:41
Nein, das verhält sich so. Bei jedem Timer-Ereignis wird an das fenster ein WM_TIMER gesendet. Und diese Nachricht hat eine sehr niedriger Priorität in der Message-Queue. Wenn jetzt also noch andere Nachrichten anstehen, werden diese zu erst abgearbeitet und dann kommt WM_TIMER dran. Und wenn die anderen Nachrichten länger brauchen, um abgearbeitet zu werden, dann kann es schon mal dauern bis WM_TIMER abgearbeitet wird. Deswegen soll man WM_TIMER nie auf Gleichhiet mit einer Zeit prüfen, sondern immer mit größer.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#6
  Alt 18. Mär 2003, 19:45
Die Nachrichtenschleife eines Programmes wird doch von diesem selbst verwaltet. Also könnte man doch versuchen, eine WM_TIMER-Nachricht mit hoher Priorität zu bearbeiten und die übrigen auf einen zweiten Stapel legen, der nur bearbeitet wird, wenn keine Timer-Nachrichten vorliegen.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7
  Alt 18. Mär 2003, 19:48
Das schon, nur wird die Nachrichtenschleife vom Fenster von der Nachrichtenschlange von Windows gefüttert.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#8
  Alt 18. Mär 2003, 19:52
Wenn man dem entsprechenden Programm nun eine hohe Prozesspriorität gibt, dann sollten doch auch Timer-Nachrichten recht zugig verschickt werden.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9
  Alt 18. Mär 2003, 19:57
Nein.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#10
  Alt 18. Mär 2003, 20:11
Wieso nicht? Falls das heißen soll, Windows sortiert nicht nach Prozesspriorität sondern nach Typ der Nachricht, wofür gibt es dann die Prozesspriorität?
Oder sagt diese nur etwas über den Anzahl eines Prozesses an der Systemzeit aus, nicht aber über deren Behandlung in der Nachrichtenschleife von Windows?
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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