Pythonにおけるtimer.cancelメソッドは?
Python のtimer.cancel()メソッドは、作成したTimerオブジェクトの実行をキャンセルするために使用します。 Timerオブジェクトとは、指定した時間間隔後に指定した関数を呼び出すスレッドです。
timer.cancel()メソッドを呼び出した時、タイマーオブジェクトのタイマーがまだ起動していなければ、そのタイマーは起動されません。もしタイマーが既に起動していた場合、タイマーの実行はキャンセルされます。これはタイマーが指定された関数をこれ以上実行しないということを意味します。
timer.cancel()メソッドの使用の簡単な例を次に示します。
import threading
def print_message():
print("Hello, World!")
timer = threading.Timer(5.0, print_message)
timer.start()
# 等待3秒后取消计时器
timer.cancel()
上記の例では、Timerオブジェクトを作成し、5秒後にprint_message()関数が実行するようにしました。その後、timer.cancel()メソッドを呼び出して、タイマーの開始前にタイマーの実行をキャンセルしました。これにより、print_message()関数は実行されません。
タイマーがキャンセルされると、以降再スタートできません。タイマーを再スタートしたい場合は、新たに Timer オブジェクトを作成し、その start() メソッドを呼び出す必要があります。