import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.ReentrantLock; class Monitor { private int storsteTall = -1; private final Lock lock = new ReentrantLock(); private final Condition finnesFlereTall = lock.newCondition(); public void giTall(int tall) { lock.lock(); try { if (tall > storsteTall) { storsteTall = tall; } } finally { lock.unlock(); } } public int hentTall() { lock.lock(); try { return storsteTall; } finally { lock.unlock(); } } }