我在嘗試集成實現倒計時的OSGi包以便在特定時間間隔內發送消息時出現問題。這是由可運行的類或線程完成的。在OSGi中實現等待方法而不停止其他包的線程
這個想法是下一個;我有捆綁Sender
,捆綁Receiver
和捆綁Countdown
。
發件人包在時間間隔後發送消息,f.e:5秒。
發件人 - >創建消息
倒計時 - >計數到5秒。
收件人 - > 5秒後收到郵件。
這只是我的應用程序的「metaphore」,但是,我相信你有這個想法。
我遇到的問題是下一個:當束Countdown
運行其5秒倒計時,束Sender
停止工作(這是好的,沒問題就在這裏),但束Receiver
也停止工作。我的想法是在單獨的包中實施倒計時,以避免其他包停止工作,但我想我錯了。
所以,我的問題是... 我該如何實現一個不會不必要地停止所有OSGi應用程序包的倒計時?
在此先感謝。
某些代碼:
Countdown
public void countDown()
{
int i = delay;
while (i>0){
try {
i--;
Thread.sleep(1000); // 1000ms = 1 s
}
catch (InterruptedException e) {
//countdown failure? --> nah
}
}
}
Sender
Thread t = new Thread(new Countdown(5));
t.start();
while (t.isAlive());
System.out.println("Sending the message");
我們能否看到一些代碼我們可以診斷問題? – GreySwordz
當然可以。只需一分鐘 –