Kotlin Timer.schedule запускает две задачи - PullRequest
0 голосов
/ 28 августа 2018

При написании приложения для Android на Kotlin я использую классы Timer.schedule и TimerTask. Но Timer.schedule запускает две задачи.

Это мой код:

var count = 0
val timer = Timer()
val task = object : TimerTask() {
    override fun run() {
        println("${this} : $count")
        count++
    }
}
timer.schedule(task, 0, 1000)

Мой код дает мне такой результат:

PackageName.ClassName$task@f4bd15 : 0
PackageName.ClassName$task@3651fb6 : 0
PackageName.ClassName$task@f4bd15 : 1
PackageName.ClassName$task@3651fb6 : 1
PackageName.ClassName$task@f4bd15 : 2
PackageName.ClassName$task@3651fb6 : 2
...

Запускаются две задачи. Когда я пытаюсь task.cancel, только одна задача была отменена. Другой еще жив.

Как запустить только одно задание?

...