Servus.
Mit diesem Include kann man leicht einen Cache für Temporärdaten in seine Anwendungen integrieren. Der Cache lässt sich optional auf eine Maximalgröße einstellen, für die Daten können optional individuelle Gültigkeitsdauern festgelegt werden. Wird die Maximalgrenze überschritten löscht der Cache die am wenigsten benötigten, bzw. auf die am längste nicht zugegriffenen Daten. Daten die ihr Maximalalter überschritten haben werden ebenfalls gelöscht. Auf die Daten kann mit einer StringID zugegriffen werden.
Für was braucht man das? Für immer wiederkehrende Anfragen, bzw. wiederkehrende Berechnungen (wird eine Datei angefordert die bereits im Cache liegt muss man sie nicht mehr von der Festplatte lesen, ein dynamisch berechnetes Bild mit den selben Parametern wie ein bereits gecachedes muss nicht mehr berechnet werden...).
Einige haben es sicher erkannt, einsetzen werde ich das in ECluster, also z.B. in Servern wo immer wieder dieselben Anfragen kommen kann man das sicher auch brauchen
Ist mal ne 1. Version, über Bugreports usw. würde ich mich sehr freuen.
Viel Spaß damit, Gruß Alex
Download: http://paladiumproject.q-soft.ch/public/misc/Cache.zip
Cache für Temporärdaten
Cache für Temporärdaten
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Gleich mal ein kleines Update:
Der Cache erstellt sich jetzt eine Kopie der Daten, Flushen und Ausmisten des Cache sind nun möglich, einzelne Einträge manuell löschbar. UserDaten für die Einträge, Speichern & Laden in und aus Dateien, Enummerieren aller Einträge im Cache. Und ein paar Performance - Verbesserungen.
Ein neuer Democode liegt bei mit dem gecachedes Datei - Lesen gezeigt wird.
Download im 1. Post
Gruß, Alex
Der Cache erstellt sich jetzt eine Kopie der Daten, Flushen und Ausmisten des Cache sind nun möglich, einzelne Einträge manuell löschbar. UserDaten für die Einträge, Speichern & Laden in und aus Dateien, Enummerieren aller Einträge im Cache. Und ein paar Performance - Verbesserungen.
Ein neuer Democode liegt bei mit dem gecachedes Datei - Lesen gezeigt wird.
Download im 1. Post
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Update:
Download im 1. Post
Gruß, Alex
- Speed Optimierungen
- Zugriffszahl wird beim Freiräumen alter Daten miteinbezogen
- Auswahl zu löschender Beiträge über Toleranzen regelbar
- Cache optimierbar, häufig benutze Einträge werden nach vorne verschoben
Download im 1. Post
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Update:
Gruß, Alex
- Kleiner BugFix in Cache_Config()
- Alle Befehle nun ThreadSafe
- x86 & x64 Cache-Dateien nun untereinander komaptibel
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86