package org.deeplearning4j.parallelism.inference.observers; import lombok.extern.slf4j.Slf4j; import java.util.Observable; import java.util.Observer; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.locks.LockSupport; /** * Simple Observer implementation for * sequential inference * * @author raver119@gmail.com */ @Slf4j public class BasicInferenceObserver implements Observer { private AtomicBoolean finished; public BasicInferenceObserver() { finished = new AtomicBoolean(false); } @Override public void update(Observable o, Object arg) { finished.set(true); } /** * FOR DEBUGGING ONLY, TO BE REMOVED BEFORE MERGE */ public void waitTillDone() { while (!finished.get()) { LockSupport.parkNanos(1000); } } }