blob: df24db1a41021588083fa038e68e2511e64b6401 [file] [log] [blame]
package de.ids_mannheim.korap.index;
import org.apache.lucene.util.Counter;
import java.lang.*;
import java.lang.InterruptedException.*;
import org.apache.lucene.util.ThreadInterruptedException;
/**
* Create a timer thread for search time outs.
*/
// See TimeLimitingCollector
public class TimeOutThread extends Thread {
private static final long resolution = 250;
private volatile boolean stop = false;
private Counter counter;
public TimeOutThread () {
super("TimeOutThread");
counter = Counter.newCounter(true);
};
@Override
public void run() {
while (!stop) {
counter.addAndGet(resolution);
try {
Thread.sleep( resolution );
}
catch (InterruptedException ie) {
throw new ThreadInterruptedException(ie);
};
};
};
// Get miliseconds
public long getTime () {
return counter.get();
};
// Stops the timer thread
public void stopTimer () {
stop = true;
};
};