在codenameone中替换java.util.Timer.purge()有什么用?

时间:2017-06-28 17:50:57

标签: codenameone

我正在尝试将一些java代码移植到codenameone。部分代码使用java.util.Timer。虽然codenameone不支持Timer.purge()。有没有办法实现相同的功能?

1 个答案:

答案 0 :(得分:0)

我实际上从未使用过该API,因此我必须检查它在JavaDocs中的作用:

  

从此计时器的任务队列中删除所有已取消的任务。打电话给这个   方法对计时器的行为没有影响,但是消除了   从队列中引用已取消的任务。如果没有   对这些任务的外部引用,它们就有资格获得垃圾   集合。

     

大多数程序都不需要调用此方法。它是专门设计的   供取消大量任务的罕见应用程序使用。   调用此方法会交换空间时间:方法的运行时   可以与n + c log n成比例,其中n是任务的数量   队列和c是已取消任务的数量。

我读这个方法的方法是不必要的。如果您需要取消这么多计时器,那么清除变得至关重要,您可能更愿意毕业使用可能更高效的线程。