AGB  ·  Datenschutz  ·  Impressum  







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

Programm blockiert ganz Windows

Ein Thema von Gruber_Hans_12345 · begonnen am 29. Jun 2013 · letzter Beitrag vom 4. Jul 2013
Antwort Antwort
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.235 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 08:22
Ganz blockieren ist eigentlich nicht möglich. Aber im Zusammenhang mit hoher Festplattenlast + Virenscanner kann die Verarbeitung schon sehr verzögert werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#2

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 08:32
Ganz blockieren ist eigentlich nicht möglich. Aber im Zusammenhang mit hoher Festplattenlast + Virenscanner kann die Verarbeitung schon sehr verzögert werden.
Du hast sicher recht damit, für den gemeinen Anwender erscheint das aber schon so. Ich hab das selber schon oft erlebt, z.B. wenn ich einmalig größere Datenmengen zwischen Datenbanken kopiere (z.B. beim Umstieg auf ein anderes DBMS) und vor oder nach dem Next in der While Not Dataset.Eof-Schleife mal wieder Application.ProcessMessages vergessen habe. In solchen Fällen kannst du mit deinem Windows kaum noch arbeiten, obwohl natürlich hin & wieder die eine oder andere Message gaaanz laaangsaaam verarbeitet wird

Da hilfts auch nicht, im Taskmanager die Priorität des Prozesses zu verringern ...
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.062 Beiträge
 
Delphi 12 Athens
 
#3

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 09:41
Seit WindowsXP braucht ja Windows keine aktive Freigabe von Prozessorzeit durch den Entwickler.

Aber seltsamer weise gibt es doch immer wieder Dinge die Windows enfrieren lassen können. z.b.
wenn man sich auf einem Netzwerklaufwer zum erstenmal verbindet.
Oder wenn man in der Kommandozeile eine Konsolenanwendung aus einem Netzwerklaufwerk heraus startet.
Oder wenn man im Explorer auf die Netzwerkressourcen klickt und er sucht....alles friert ein.
Außer der Maus.

Ich hasse das...
Andreas
Nobody goes there anymore. It's too crowded!
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.441 Beiträge
 
Delphi 2007 Professional
 
#4

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 09:40
Ganz blockieren ist eigentlich nicht möglich. Aber im Zusammenhang mit hoher Festplattenlast + Virenscanner kann die Verarbeitung schon sehr verzögert werden.
Nein, Festplattenlast gibts in dem Fall fast gar nicht, es wird zB.: einfach eine richtig große Datenmenge vom Firebird Server geholt .... in der Zeit blockiert natürlich mein Programm

ABER eben auch die anderen Programm bzw eigetnlich nur das Windows System ...
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#5

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 09:56
Nein, Festplattenlast gibts in dem Fall fast gar nicht, es wird zB.: einfach eine richtig große Datenmenge vom Firebird Server geholt .... in der Zeit blockiert natürlich mein Programm
ABER eben auch die anderen Programm bzw eigetnlich nur das Windows System ...
Wenn dein Firebird-Server auf demselben BS läuft wie deine Anwendung, dann entsteht selbstverständlich ausgiebiger Festplattenzugriff beim Einlesen großer Datenmengen in den Speicher. Da du aber nur selten eine riesige Datenmenge im Speicher zur Verfügung haben mußt, solltest du deine Datasets so einstellen, daß eben nicht alles geholt wird. Bei mir mit IbDac stelle ich dazu das Property FetchAll auf False. Bei großen Datenmengen entsteht z.B. auch beim Setzen von IndexFieldNames (sortieren) eine hohe Prozessorlast ...
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#6

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 10:22
Und nicht vergessen, Windows hat eine Auslagerungsdatei und die wird benutzt, auch wenn noch Speicher frei ist. Und das gibt Festplattenzugriff in nicht zwingend unerheblichem Maße. Auch dann, wenn die Daten von einem X-beliebigen anderen Datenbankserver geholt werden.

Schau doch mal, nach Einbau von Application.ProcessMessages in der Schleife, im Taskmanager nach, ob und wie sich die Nutzung des virtuellen Speichers Deines Programmes ändert. Dann siehst Du, ob auf die Festplatte zugegriffen wird.
Und schau mal, ob sich die Anzahl der Seitenfehler verändert, dann wird Speicherinhalt aus der Auslagerungsdatei in den Arbeitsspeicher geholt. Und dahinter stecken Festplattenzugriffe. Ggfls. werden andere Programme aufgefordert Speicher freizugeben oder der Speicherinhalt anderer Programme wird von Windows in die Auslagerungsdatei verschoben, auch da stecken Festplattenzugriffe hinter.

Wenn man sehr viel Arbeitsspeicher hat, kann man mal den Versuch starten, Windows ohne Auslagerungsdatei zu konfigurieren. Gerade bei Datenbankanwendungen habe ich wiederholt die Erfahrung gemacht, dass sie dadurch deutlich beschleunigt werden können.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 10:36
Wenn man sehr viel Arbeitsspeicher hat, kann man mal den Versuch starten, Windows ohne Auslagerungsdatei zu konfigurieren. Gerade bei Datenbankanwendungen habe ich wiederholt die Erfahrung gemacht, dass sie dadurch deutlich beschleunigt werden können.
Eine langsame Datenbank-Anwendung kann auch in einer RamDisk ausgeführt werden (oder die Datenbank in die RamDisk kopieren), was die Verarbeitungsgeschwindigkeit deutlich erhöht. Man darf nur nicht vergessen, vor Beenden der RamDisk alles zu sichern
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#8

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 10:45
@Perlsau

Naja, 'ne Oracle-Datenbank auf 'ne RamDisk, ob das noch geht?
Mit viel Speicher meine ich sowas von 32 oder 64 oder mehr GB

Aber das mit der RamDisk habe ich auch mal ausprobiert und feststellen müssen, dass das langsamer sein kann, als nur Arbeitsspeicher und Festplatte. Ok, das ist schon (gefühlt) ein paar Jahrzehnte her.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: Programm blockiert ganz Windows

  Alt 29. Jun 2013, 10:53
Naja, 'ne Oracle-Datenbank auf 'ne RamDisk, ob das noch geht? Mit viel Speicher meine ich sowas von 32 oder 64 oder mehr GB
Da gäb's wohl Probleme Allein schon das Kopieren in die Ramdisk dauert vielleicht schon länger als die gesamte DB-Sitzung ...

Aber das mit der RamDisk habe ich auch mal ausprobiert und feststellen müssen, dass das langsamer sein kann, als nur Arbeitsspeicher und Festplatte. Ok, das ist schon (gefühlt) ein paar Jahrzehnte her.
Ein paar Jahrzehnte? 1993? 1983? Ich hab das vor ein zwei Jahren mit einer Firebird-Datenbank* ausprobiert, die ca. 1 GB groß ist und zahlreiche Bilder enthält. Der Aufbau des Formulars war in der RamDisk merkbar flotter als sonst. Die Trägheit der Anwendung liegt natürlich an schlechter Programmierung, da mach ich inzwischen einiges anders.

* Die verlinkte Testversion hat natürlich weniger ...
  Mit Zitat antworten Zitat
Antwort Antwort


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 22:01 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