我在eclipse中编写了一些视图和编辑器,并遇到以下问题。
如何在一段“不活动”之后才能让事情发生?
所以我的问题是这个。我有一个显示特定模型信息的视图。模型在更新时发送事件,但有时可以发送大量事件。我想让事件设置为计时器而不是让我的视图重绘每一个事件,并且只有当该计时器到期而没有其他事件进入时,我才想实际更新我的视图。但是我找不到这样做的方法。我能找到的最好的是Display.timerExec
方法,但是我必须在每个事件上调用它,然后检查一些时间戳以查看是否有另一个事件同时到达。
我看过普通的java Timer类,但它们似乎也没有为我提供一个可重置的计时器。
任何想法如何实现我想做的事情?
答案 0 :(得分:0)
尝试UiJobs - > http://www.vogella.de/articles/EclipseJobs/article.html
答案 1 :(得分:0)
您可以使用一堆任务和一个读取存储桶的线程来执行此操作。跟踪最后添加到存储桶的时间。让线程在你想要的延迟时间内休眠。当它醒来时,它应该看到最后一次添加的时间是否超过延迟并执行任务。
这是我在Sapphire项目中的实施:
如果您能够遵守EPL条款,请随意复制。否则,使用概念来构建自己的实现。