This should do:
protected void shrinkSize() {
Map lhm = Collections.synchronizedMap(yourLinkedHashMap);
Iterator iter = lhm.entrySet().iterator();
while (iter.hasNext()) {
if (size() > maxSize)
iter.remove();
else
break;
}
}