计算机休眠后,Java TrayIcon.displayMessage不起作用

时间:2014-05-18 10:18:28

标签: java multithreading sleep system-tray trayicon

我有一个类可以执行以下操作,但有更具建设性的信息:

class myClass extends Thread{
TrayIcon icon = new TrayIcon(SomeImage);
public myClass(){
    SystemTray tray = SystemTray.getSystemTray();
    tray.add(icon);
    }
public run(){
    final int seconds = 1000;
    try{
        while(true){
            icon.displayMessage("Some Title", "Some content", TrayIcon.MessageType.INFO);
            sleep(1800*seconds);
            }
        }
    catch(InterruptedException e){
         this.run();
         e.printStackTrace();
    }
}

该类工作并按预期执行,以给定的间隔向用户显示一些消息。 计算机进入睡眠模式时出现我的问题。处于睡眠模式一段时间后,比如3小时,TrayIcon.displayMessage()停止正常工作。

在睡眠期间“应该”显示的消息偶尔出现,并且不会显示任何要显示的新消息。我找到的唯一解决方案是注销并重新登录Windows,但我想知道是否有一个不那么麻烦的问题。

0 个答案:

没有答案