Ich möchte gerne etwas über TimerTask klären. Wenn Sie den Code unten haben:
timer.schedule(task, 60000);
wenn die Aufgabe in der nächsten 1 Minute ausgeführt werden soll, wird das Aufgabenobjekt bereits ausgeführt?
weil ich irgendwo in meinem Code task.cancel() aufgerufen habe, aber es scheint, dass der Aufruf nicht verhindert, dass
auszuführende Aufgabe. Ich habe sogar den Rückgabewert des Aufrufs protokolliert und er gibt false zurück.
Ich bin auf meine Frage gekommen, als ich die Dokumentation für die Methode cancel gelesen habe:
Bricht die Aufgabe TimerTask ab und entfernt sie aus der Warteschlange des Timers. Im Allgemeinen wird false zurückgegeben, wenn der Aufruf nicht verhindert hat, dass eine TimerTask nicht mindestens einmal an der Ausführung gehindert hat. Nachfolgende Aufrufe haben keine Wirkung. Gibt true zurück, wenn der Aufruf eine geplante Ausführung verhindert hat, andernfalls false.
Ich glaube, ich habe cancel() vor der 1-minütigen Verzögerung aufgerufen. Aber wie kommt es, dass cancel false zurückgegeben hat,
wird sie [Aufgabe] bereits ausgeführt?
Ich hoffe, Sie können mir Hinweise/Hinweise oder sogar eine Erklärung dafür geben. Danke SO!