0

IMAPFolderにMessageCountListenerを設定しました。継続的に更新を取得するには、次のことを行う必要がありました。これは、アプリのパフォーマンスの面でキラーです。すべてのフォルダで実行されているため、GUIがフリーズします。

while (true) {
     try {
          if (folder != null && folder.isOpen()) {
              folder.idle();
          } else {
              getSyncListenersAttachedFolders().remove(syncFolder.getFolderID());
          }
     } catch (Exception ex) {
          errorLOG.error("IDLE command issue exception.");
          getSyncListenersAttachedFolders().remove(syncFolder.getFolderID());
     }
}

while(true)状態で実行されないアイドルコマンドを発行するより良い方法はありますか?迅速な対応を期待しています。前もって感謝します。

4

1 に答える 1

1

独自のスレッドで実行する必要があります。

于 2013-02-22T19:22:23.840 に答える