Я развернул некоторые OSGI декларативных служб в своем комплекте. После запуска моего пакета эти Сервисы активируются и выполняют некоторый код в run () Thread. Тем не менее, я хотел бы запланировать время запуска run ().
@Component(name = "ABC"
,immediate = true
,enabled = true)
public class test {
private volatile boolean isStarted;
@Activate
public void activate() {
System.out.println("activate");
final Thread t = new Thread() {
public void run() {
runIt();
}
};
t.setDaemon(true);
isStarted = true;
t.start();
}
@Deactivate
public void deactivate() {
System.out.println("DEactivate");
isStarted = false;
}
private void runIt() {
while (isStarted) {
System.out.println("OK");
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}