Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#7

Re: Sleep bei hoher Systemauslastung zu lang

  Alt 25. Sep 2007, 00:14
Naja, wenn du alle 20ms ein Event benötigst dann wird das damit nicht gehen. Sowas ist schon schwieriger sauber unter Windows hinzubekommen. Ich würde dann Thread's benutzen, mit höher Priorität. Denoch bleibt der Tasksheduler von Windows und der sorgt dafür das Echtzeit unter Windows eben bei circa 20 Millisekunden und weniger aufhört zu existieren (aus Sicht einer Anwendung auf Ring 3, mit Kerneltreibern kommt man schon noch weiter runter )

Zitat:
und nach der Routine wieder aktiviert, wenn die Routine periodisch aufgerufen werden soll. Ich probiere das mal aus, und beobachte, wie sich das bei hoher Systembelastung verhält.
Da hast du keine Chancen. Bei hoher Systemauslastung werden fast immer alle Anwendungen drunter leiden, zb. das leidige Thema mit den USB-Mäusen/Keyboards die immer schwammiger reagieren bis sie stehen bleiben. Es ist eben im Grunde ein kooperatives Multitasking, auch wenn man es als präemptives Multitasking verkauft. Man kann mit einem einzigsten Thread das System quasi lahmlegen und damit dies nicht passiert muß sich der Thread, bzw. der Programmierer dessen, auch kooperativ verhalten und Rechenzeit abgeben. Eigentlich sollten wir das schon oft erlebt haben, der Explorer kopiert viele große Dateien übers Netzwerk, dann startet man par Anwendungen und das System schläft immer mehr ein. Möchte man den Task-Manager starten hängt der auch noch.

Gruß Hagen
  Mit Zitat antworten Zitat