gpt4 book ai didi

multithreading - BlackBerry-TimerTask是否在后台运行?

转载 作者:行者123 更新时间:2023-12-03 13:22:30 28 4
gpt4 key购买 nike

即使我退出我的应用程序并进入主屏幕或浏览其他应用程序,TimerTask也能正常工作吗?
我已经阅读了论坛,发现线程的一种简单机制是在BB中使用TimerTask。我想让线程始终运行,即使我的应用程序未启动(第一次之后),以便在特定间隔到来时,我可以显示来自应用程序的对话框。
我尝试了以下操作:(我正在使用此代码,而不是在MainScreenClass中,而是在第一个推送屏幕类中)

 try {
timer = new Timer();
// start after 1 second, repeat every 5 second
// timer.schedule(new ClickTask(), 0, 5000); // seconds*1000
timer.scheduleAtFixedRate(new ClickTask(), 0, 5000);
} catch (Exception e) {
// do nothing
}

private class ClickTask extends TimerTask {
public void run() {
System.out.println("Test Printing..");
// Screen screen = new Dialog(Dialog.D_OK,
// "Look out!!!", Dialog.OK,
// Bitmap.getPredefinedBitmap(Bitmap.EXCLAMATION),
// Manager.VERTICAL_SCROLL);
}
}

但是,只有在启动我的应用程序时,它才会运行计时器。如果我退出应用程序并进入设备主屏幕,似乎日志未打印(即计时器未运行)。我的代码对吗?这是在后台作为线程运行计时器的方法吗?
注意:我正在9530 Simulator上对此进行测试。

感谢您的帮助。

最佳答案

TimerTask用于您的应用程序实际运行的时间。

请查看PushRegistry.registerAlarm(),以在间隔后启动您的应用程序。

关于multithreading - BlackBerry-TimerTask是否在后台运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1856526/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com