If you are using hyperion its cause of a memory leak that is not yet fixed in many of the current releases. Open up EventManager in org.hyperion.rs2.event. and replace the submit method with this.
Code:
private void submit(final Event event, final long delay) {
engine.scheduleLogic(new Runnable() {
@Override
public void run() {
long start = System.currentTimeMillis();
if(event.isRunning()) {
event.execute();
} else {
return;
}
long elapsed = System.currentTimeMillis() - start;
long remaining = event.getDelay() - elapsed;
if(remaining <= 0) {
remaining = 0;
}
submit(event, remaining);
}
}, delay, TimeUnit.MILLISECONDS);
}