1
A
回答
2
如果你想絕對停止NSTimer
你可以使用
[timer invalidate];
但是,如果你想暫時阻止計時器解僱你可以考慮使用
[timer setFireDate:[NSDate distantFuture]];
一旦計劃在運行循環中,定時器以指定的時間間隔觸發,直到它是無效的。非重複定時器在其觸發後立即失效。但是,對於重複計時器,您必須通過調用其無效方法來使計時器對象無效。調用此方法請求從當前運行循環中刪除定時器;因此,應始終從安裝了計時器的同一線程中調用invalidate方法。使定時器無效立即禁用它,以便它不再影響運行循環。運行循環會在無效方法返回之前或之後的某個時間點刪除並釋放計時器。一旦無效,定時器對象不能被重用。
3
[timer invalidate];
timer = nil;
0
我不知道你所說的NSTimer thread
的意思,但停止的NSTimer比如你安排,你可以調用[NSTimer invalidate]
。
2
您應該仔細檢查以確保您的計時器在使其無效之前有效。
if ([timer isValid]) {
[timer invalidate];
timer = nil;
}
相關問題
- 1. 如何退出退出?
- 2. 如何退出
- 3. 如何退出退出mercurial合併?
- 4. 通過設置NSTimer退出應用程序?
- 5. 如何退出宏
- 6. 如何退出REPL
- 7. 如何退出IFRAME
- 8. 如何退出iframe
- 9. 的NSTimer/NSRunLoop發出
- 10. 如何停止NSTimer
- 11. 如何停止NSTimer
- 12. 如何爲NSTimer值
- 13. 如何停止NSTimer
- 14. 如何使用NSTimer
- 15. 如何按退回鍵退出程序?
- 16. 如何退出ajax請求,如果退出網頁
- 17. LLDB - 退出...退出?
- 18. Django:如何退出settings.py
- 19. 如何退出皮尤VENV
- 20. 如何正確退出CAcroApp?
- 21. 如何從cgi退出?
- 22. 如何退出慶典
- 23. 如何退出Contiki代碼?
- 24. 如何退出流程?
- 25. 如何退出活套?
- 26. 如何讓PHP退出E_NOTICE?
- 27. 如何退出Hackstack Server App?
- 28. 如何onblur退出功能
- 29. 如何退出matlab gui
- 30. 如何退出mootools each()
定時器不在自己的線程中運行,它們運行在同一個線程中。當事件循環重複時,它會檢查是否有任何定時器應該被觸發,如果它們應該是,runloop會觸發它們,但它都發生在同一個線程中。 – dreamlax 2012-01-10 01:56:28