TimerTaskについて明確にしたいと思います。以下のコードがある場合:
timer.schedule(task, 60000);
タスクが次の1分で実行されるようにスケジュールされている場合、タスクオブジェクトはすでに実行されていますか?
コードのどこかでtask.cancel()を呼び出しましたが、呼び出しが妨げられないようです。
実行するタスク。呼び出しからの戻り値もログに記録しましたが、falseが返されます。
キャンセル方法のドキュメントを読んだときに、質問がありました。
TimerTaskをキャンセルし、Timerのキューから削除します。通常、呼び出しによってTimerTaskの実行が少なくとも1回妨げられなかった場合は、falseが返されます。後続の呼び出しは効果がありません。呼び出しによってスケジュールされた実行が実行されなかった場合はtrueを返し、それ以外の場合はfalseを返します。
1分の遅延の前にcancel()を呼び出したと思います。しかし、どうしてキャンセルがfalseを返したのでしょうか。
[タスク]はすでに実行されていますか?
手がかり/ヒント、さらにはこれについての説明を教えていただければ幸いです。ありがとうSO!