[ Zeroo @ 26.11.2006. 23:14 ] @
Ovo su algoritmi zamjene blokova u kes memoriji i svaki radi drugacije...ako neko ima ideju kako to implementirati u javi....
slobodno...tnx :-)
[ anon315 @ 27.11.2006. 11:04 ] @
http://www.javaworld.com/javaw...2004/jw-0531-cache.html?page=1
[ The Sekula @ 27.11.2006. 13:15 ] @
LRU:

Collection API ima posebnu Map implementaciju bas za tu namenu, zove se LinkedHashMap i slicna je obicnoj HashMap osim sto odrzava i ulinkovanu listu koja omogucava iteraciju kroz elemente u odredjenom poredku. ZA LRU listu je zgodno da bude po vremenu zadnjeg pristupa, sto se naglasava sa prosledjivanjem true kao treceg parametra konstrukutora. LinkedHashMap ima i protected metodu removeEldestEntry koja se poziva po svakom dodavanju novog elementa. Ukoliko ona vrati true (po defaultu stalno vraca false, ali se moze overrideovati) onda ce iz liste biti uklonjen LRU element.

Code:

import java.util.LinkedHashMap;
import java.util.Map.Entry;


public class LRUCache extends LinkedHashMap {

    public LRUCache(int maxsize) {
        super(maxsize*4/3 + 1, 0.75f, true);
        this.maxsize = maxsize;
    }

    protected int maxsize;

    protected boolean removeEldestEntry(Entry eldest) {
        return size() > maxsize;
    }
}