防抖
在用户输入时,如果用户输入的每个字符都进行一次网络请求等IO操作,无疑是一种巨大的浪费,我们可以优化为等用户暂停输入时,再进行操作。一般优化的方式将操作延迟一段时间再执行,如果用户又进行了输入,则重置延迟。Kotlin或Java可以用Timer
或者ThreadPoolExecutor
来实现,下面给出使用Timer
的代码,
代码
import java.util.*
class DebounceExecutor(private val delay: Long) {
private var timer