Registriert seit: 4. Apr 2008
400 Beiträge
|
AW: while not Eof(myFile), wie CPU Load in den Griff bekommen?
22. Sep 2011, 07:57
Danke für eure Tipps!
Meine Programm ist eine Multithread Anwendung.
Und wenn nun ein Thread für eine Kurze Zeit die CPU voll auslastet haben die anderen ja nichts mehr davon. Und wenn nun mehrere Threads gleichzeitig das File lesen wollen geht die CPU Last erst richtig hoch.
Ich werde es einmal mit der TSJMmfFileReader probieren.
Das Problem was ich noch habe, ist das ich gleichzeitig auch eine SQLite Database genau so durchsuchen will.
Meine Idee ansonsten ist die Dateien global einzulesen. Bei einer Suche wird zuerst überprüft ob sich die Datei verändert hat (Durch externen Editor). Wenn nicht dann die Globale (z.B. StringList) verwenden oder ansonsten halt die Datei neu laden. Um die Daten aber neu zu laden bräuchte man wieder eine ThreadSafe StringList was wieder den gleichzeitigen Zugriff blockiert.
Wie gesagt, die Daten werden nur gelesen und nicht verändert. Somit sollte eine globale StringList ausreichen.
Delphi 2010, Update 4 & 5
|