From: spark_xp Date: Thu, 18 Aug 2011 04:40:32 +0000 (+0000) Subject: スリープから復帰後にクライアントが暴走する問題を解決 X-Git-Tag: v0.6~51 X-Git-Url: http://git.osdn.net/view?p=nt-manager%2Fnt-manager.git;a=commitdiff_plain;h=298903a5ebbbc2c7706bd5a1740ff49ad7fcfce3 スリープから復帰後にクライアントが暴走する問題を解決 git-svn-id: http://svn.sourceforge.jp/svnroot/nt-manager/NishioTweetManager/trunk@155 d8c9ecd3-d47d-4367-8645-de82c00e513f --- diff --git a/src/twitter/task/TweetTaskManager.java b/src/twitter/task/TweetTaskManager.java index 94cdf99..53fa4fc 100644 --- a/src/twitter/task/TweetTaskManager.java +++ b/src/twitter/task/TweetTaskManager.java @@ -25,6 +25,7 @@ public class TweetTaskManager { */ private class TweetTaskTimerTask implements Runnable { private TweetUpdateTask task; + private long lastUpdatedTime = 0; /** * @@ -41,7 +42,15 @@ public class TweetTaskManager { public void run() { try { //タスク実行 - task.runTask(); + long currentUpdated = System.currentTimeMillis(); + if( currentUpdated - lastUpdatedTime > 5000) { + //スリープから復帰後、スリープ中に行っていなかったタスクを全部実行しようとするので阻止 + task.runTask(); + } +// else { +// System.out.println("Update Canceled"); +// } + lastUpdatedTime = currentUpdated; } catch (TweetTaskException ex) { Logger.getLogger(TweetTaskManager.class.getName()).log( Level.SEVERE, "TimerTask内でエラーが発生しました", ex);