2011-10-18 30 views
0

我使用簡單的代碼來啓動一個定時器重複調用它每30秒後的方法。的NSTimer問題:所的NSTimer 2秒後連續叫---

[NSTimer scheduledTimerWithTimeInterval:30 target:self selector:@selector(refresh) userInfo:nil repeats:YES]; 

它正常啓動,但過了一段時間後,每2或3秒鐘隨機調用一次「刷新」方法。我不修改定時器或代碼中任何地方的任何東西。任何猜測什麼可能會出錯.....

謝謝你!

+3

你的應用程序在哪裏創建了NSTimer?也許它在循環本身或其他選擇器的一部分被擊中某處?你能提供更多的信息嗎? – Luke

回答

1

是否有可能,這個代碼被執行一次以上,從而建立一個定時器的多個實例與一個30秒的超時時間,所有的發射在不同的時間?

如果不是的話,是有可能,一些你正在做的也許是阻止運行循環,並導致計時器事件排隊處理的?

我建議檢查這些可能性。

+0

我想我的第二點是有道理的。 。讓我檢查一下。非常感謝你。 。 。我會檢查一下。 –

+0

@BharatJ你有沒有發現這個問題?我的答案解決了什麼?如果你能跟進並接受答案,如果確實有幫助,那將會很好。謝謝。 – Jasarien