Возможно, вы путаетесь между потоками и наблюдаемыми,
Я использовал Observables в прошлом для таймера на плагине Minecraft, у меня есть событие, которое запускается каждую минуту.
public class TimerHandler extends Observable implements Runnable{
@Override
public void run() {
this.setChanged();
this.notifyObservers();
}
}
Таким образом, это срабатывает каждую минуту, а затем для добавления событий в очередь таймера, вы просто подписываетесь на наблюдаемое значение, означающее, что подписанные вызовы запускаются каждую минуту.
public class PlotTimer implements Observer {
@Override
public void update(Observable o, Object arg) {
......
чтобы подписаться я звоню на следующий
getServer().getScheduler().scheduleAsyncRepeatingTask(this,timerHandler,1200,1200);
timerHandler.addObserver(new PayDayTimer());
timerHandler.addObserver(new ProfileTimer());
timerHandler.addObserver(new PlotTimer());