AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Bei Windows bewirken das ein Verzeichnis im Speicher bleibt
Thema durchsuchen
Ansicht
Themen-Optionen

Bei Windows bewirken das ein Verzeichnis im Speicher bleibt

Ein Thema von Anthauri · begonnen am 26. Feb 2010 · letzter Beitrag vom 27. Feb 2010
Antwort Antwort
Anthauri

Registriert seit: 1. Feb 2004
61 Beiträge
 
Delphi 6 Personal
 
#1

Bei Windows bewirken das ein Verzeichnis im Speicher bleibt

  Alt 26. Feb 2010, 17:26
Hallo zusammen,
ich habe bei einem meiner Deplphi Projekte ein Arbeitsverzeichnis mit vielen Dateien darin.

Wenn ich auf das Verzeichnis erstmalig zugreife (egal ob über das Programm oder über den Dateiexplorer oder so) dauert es eine Weile (Minute oder so) bis die Daten verfügbar sind (ich mutmaße die werden in den Speicher gelesen und abgelegt).
Bei Folgezugriffen geht es dann schneller (weils ja aus dem Speicher kommt).

Allerdings scheint es so, dass Windows diesen Speicherbereich auch irgendwann wieder vergisst wenn eine Zeit lang keine Dateizugriffe erfolgten und der nächste Zugriff ebenso lange dauert wie der erste.

Kann man bei Windows (XP) irgendwie einstellen, dass es dies bei diesem Verzeichnis (oder generell) nicht tut?
  Mit Zitat antworten Zitat
Benutzerbild von alleinherrscher
alleinherrscher

Registriert seit: 8. Jul 2004
Ort: Aachen
797 Beiträge
 
Delphi XE2 Professional
 
#2

Re: Bei Windows bewirken das ein Verzeichnis im Speicher ble

  Alt 26. Feb 2010, 17:32
Ne Minute, bis der Explorer zugriff hat? Hab ich noch nie erlebt... mach mal testweise deinen virenscanner aus und versuch dann nochmal, das verzeichnis zu öffnen.
„Software wird schneller langsamer als Hardware schneller wird. “ (Niklaus Wirth, 1995)

Mein Netzwerktool: Lan.FS
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#3

Re: Bei Windows bewirken das ein Verzeichnis im Speicher ble

  Alt 26. Feb 2010, 17:39
Ich kenne nur folgendes Verhalten: wenn mein Windows 7 lustig ist, dann werden die Festplatten, auf die seit xx Minuten kein Zugriff statt gefunden hat, abgeschalten. Wenn ich dann wieder auf die Festplatten zugegriffen habe, hat es wieder gedauert, bis diese angelaufen sind.

Ist das wirklich nur bei dem einen Ordner der Fall? Hast du diese evtl. auf einer anderen HDD liegen? Wie viele Dateien befinden sich denn darin?

Aber was mich wirklich verwirrt, ist die geschätzte Dauer... Selbst 10 Sekunden wäre schon arg lange! Vielleicht auch mal die S.M.A.R.T.-Werte der Festplatte checken!
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Anthauri

Registriert seit: 1. Feb 2004
61 Beiträge
 
Delphi 6 Personal
 
#4

Re: Bei Windows bewirken das ein Verzeichnis im Speicher ble

  Alt 27. Feb 2010, 08:36
Danke für die Tipps, werde mal nach den Virenscannern etc. schauen.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Bei Windows bewirken das ein Verzeichnis im Speicher ble

  Alt 27. Feb 2010, 11:09
Zitat von alleinherrscher:
Ne Minute, bis der Explorer zugriff hat? Hab ich noch nie erlebt...
Wir schon . Auch mit 5stelliger Anzahl von Dateien in einem Verzeichnis.

Welche Art von Dateien sind das? Bei Bilddateien versucht Windows teilweise seinen Thumbs zu aktualisieren.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Bei Windows bewirken das ein Verzeichnis im Speicher ble

  Alt 27. Feb 2010, 11:28
Nein, das kann man nicht einstellen
und ja, die Verzeichnisse werden in der WFC (Windows File Cache, denn auch ein Verzeichnis ist in gewisser Weise nur eine Datei) zwischengespeichert.

Wie lange etwas in dieser Cache drinbleibt, hängt von der Auslastung des Arbeitsspeichers und den Einstellungen für das CacheManagement ab.

Und nein, es wäre auch fatal, wenn man einfach so sagen könnte, daß diese Cache etwas nicht mehr entladen darf, denn damit würde die Nutzung des physischen Arbeitsspeicher stark eingeschränkt.

PS: Bei einem FindFirst/FindFirstFile werden keine Thrumbnails akualisiert oder irgendwelche Metadaten aus den Dateien ausgelesen, auch der Virenscanner schaut sich dort normaler Weise noch keine Dateien an, da nicht auf diese Zugegriffen wird (abgesehn von vielleicht dem Verzeichnis selber, aber das dürfte schnell vorüber sein).

Windows braucht einfach eine Weile, um derarige Verzeichnisse aufzulisten.
(schneller geht es nur, wenn man z.B. die MFT direkt ausließt oder wenn man die Verzeichnisstruktur selber zerlegt/parst, aber Letzteres würde ich keinem anraten, da man hierfür den genauen Aufbau ds Dateisystems beachten müsste)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  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 05:52 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