Files
KLALB/src/org/kne/io/Task.java
T
2023-01-05 08:19:54 +08:00

32 lines
536 B
Java

package org.kne.io;
public abstract class Task implements Runnable{
private volatile boolean begin=false,end=false;
private volatile Object t=new Object();
@Override
public void run() {
begin=true;
runTask();
end=true;
if(t!=null) {
synchronized(t) {
t.notifyAll();
}
}
}
public void waitfortask() {
synchronized(t){
try {
while(!end) {
t.wait(1);
}
} catch (InterruptedException e) {
e.printStackTrace();
}}
}
protected abstract void runTask();
}