Delphi-PRAXiS
Seite 5 von 5   « Erste     345   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Sleep ohne Win32 API (https://www.delphipraxis.net/49772-sleep-ohne-win32-api.html)

Luckie 16. Jul 2005 16:39

Re: Sleep ohne Win32 API
 
Na das ist doch schon mal eine Aussage. Alleine wäre so ein Projekt wohl auch kaum innerhalb so kurzer Zeit zu bewältigen gewesen. Du hast aber den Eindruck erweckt, als wenn du es alleine machen würdest. Und um ehrlich zu sein hatte ich den Eindruck, als wenn du selbst nicht wüsstest, was du da machst.

Da das ja nun geklärt ist, können wir eventuell wieder zum Thema zurück finden.

sniper_w 16. Jul 2005 16:43

Re: Sleep ohne Win32 API
 
Zitat:

Da das ja nun geklärt ist, können wir eventuell wieder zum Thema zurück finden.
Das freut mich gewaltig zu hören, obwohl ich auch ohne sleep sowieso auskommen muss.

tommie-lie 16. Jul 2005 16:56

Re: Sleep ohne Win32 API
 
Zitat:

Zitat von Luckie
Und um ehrlich zu sein hatte ich den Eindruck, als wenn du selbst nicht wüsstest, was du da machst.

Du auch? :gruebel: Also sowas nenne ich Gedankenübertragung :mrgreen:

Zitat:

Zitat von Luckie
Da das ja nun geklärt ist, können wir eventuell wieder zum Thema zurück finden.

Die einzige Antwort hat Olli schon gepostet, falls das Netzwerkinterface einen Interrupt liefert (was auch immer die da benutzen). Wenn nicht programmiert man sich halt 'nen Timer, der alle x Millisekunden einen Software-Interrupt auslöst, das dürfte der Weg sein, den auch Scheduler von Multitasking-Betriebssystemen verwenden.
Dann dürfte eine Polling-Schleife nicht sonderlich stark beim Stromverbrauch auffallen, selbst wenn sie sämtliche Takte der CPU für sich beansprucht. Immerhin wird nicht der gesamte Prozessorkern genutzt, größte Teile der Arithmetikeinheiten vermutlich sowieso nicht. Nun gut, die feine Art ein Programm laufen zu lassen ist Polling trotzdem nicht (nicht daß die Art, dieses Programm überhaupt zu entwickeln die feine Art wäre...).
Fraglich ist, ob euer Datenbankserver im Realmode wirklich schneller arbeitet als ein vernünftiger im PM. Das ständige Mappen winziger 16kB-Fensterchen in einen 1MB-Adressraum braucht schließlich auch seine Zeit, in der ein erwachsender Server schon die Daten ausgelesen haben könnte und sie bereits unterwegs an den Client wären. Daß "binnen einer Nanosekunde" nehme ich dir ohnehin nicht ab, so lange ist ein Takt bei einem 1GHz-Prozessor, angenommen ihr hättet aktuelle Hardware: in maximal 4 Takten kriegt ihr die Anfrage nicht beantwortet.
Ein vernünftiger Datenbankserver auf einem Linux oder Windows Server wäre hier wohl die effektivere Methode gewesen, und die Arbeitskosten in Form mehrere Mannwochen hätte man lieber in RAM für den Server investieren sollen. Ich denke das wäre eine sinnvollere Investition gewesen, falls es dem Betreiber wirklich auf maximale Performance ankommt.
Kommt es übrigens auf maximale Performance an und kriegt man über die Netzwerkschnittstelle keinen Interrupt wäre ein timergesteuerter Softwareinterrupt übrigens totaler Wahnsinn, dann lieber die paar Watt pro Tag in die Endlosschleife für's Polling stecken.

sniper_w 16. Jul 2005 17:05

Re: Sleep ohne Win32 API
 
Zitat:

Fraglich ist, ob euer Datenbankserver im Realmode wirklich schneller arbeitet als ein vernünftiger im PM.
Vielleicht muss man es erleben um zu glauben ;).


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:58 Uhr.
Seite 5 von 5   « Erste     345   

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