在 Java 中实现 debounce
对于我正在编写的一些代码,我可以使用Java中一个很好的通用实现。debounce
public interface Callback {
public void call(Object arg);
}
class Debouncer implements Callback {
public Debouncer(Callback c, int interval) { ... }
public void call(Object arg) {
// should forward calls with the same arguments to the callback c
// but batch multiple calls inside `interval` to a single one
}
}
当使用相同的参数在毫秒内多次调用时,回调函数应只调用一次。call()
interval
可视化:
Debouncer#call xxx x xxxxxxx xxxxxxxxxxxxxxx
Callback#call x x x (interval is 2)
- (类似的东西)这是否已经存在于某些Java标准库中?
- 您将如何实现它?