002
05.06.2003, 11:10 Uhr
ao
(Operator)
|
Wenn das so selten vorkommt, daß mal jemand was in dein Verzeichnis kopiert, dann kannste auch die Liste mit den Namen in eine Textdatei auslagern und bei Bedarf zurückholen.
Oder eine Mischform: nach jeder Änderung bleibt die Liste für X Minuten im Arbeitsspeicher, für den Fall, daß noch was nachkommt. Danach ab auf die Platte damit.
Und wieso brauchst du so irrsinnig viel Speicher für 15 Dateinamen, wenn jeder Name nur 15 Zeichen lang ist? Da würd ich mal nachforschen.
Zitat: |
Mal angenommen, in dem Verzeichnis befinden sich jetzt 5000 Dateien. Jeder Dateiname ist 15 zeichen lang ... ohjee ...
|
... dann sind das 75000 Bytes, plus ein bißchen Verwaltungsinfo immer noch unter 100 K. Ist doch ein Klacks heutzutage.
Gib doch nicht so schnell auf. Dein Algorithmus funktioniert, und das ist schon mal ziemlich wichtig. Bevor du nach einem neuen schreist, stell fest, warum es hakt.
Beim Speicherverbrauch mußt du nachforschen: Steigt er linear mit der Anzahl der Dateien? Dann hast du bestimmt irgendwo einen Fehler gemacht, 100 K belegen für 15 Bytes Nutzdaten, das kann nicht sein, es sei denn, du speicherst die gemalten Buchstaben als Bitmap ;-) .
Vielleicht hast du ein Leck? Wird der Speicher am Programmende wieder freigegeben oder ist er verloren (Task-Manager)?
Oder wird einmal ein großer Klotz belegt und dann mit jedem neuen Namen nur noch ganz wenig? Das wär dann nicht besonders fein, aber noch OK.
Nur mal so als Anregung.
ao |