使計時器無效
[timer invalidate];
timer = nil;
這將停止計時器開火。**必須從建立計時器的執行緒中呼叫,**請參閱 Apple 的註釋 :
你必須從安裝了計時器的執行緒傳送此訊息。如果從另一個執行緒傳送此訊息,則可能無法從其執行迴圈中刪除與計時器關聯的輸入源,這可能會阻止執行緒正常退出。
設定 nil
將幫助你檢查它是否正在執行。
if(timer) {
[timer invalidate];
timer = nil;
}
//Now set a timer again.