13分間隔で発射するタイマーを設定しています。しかし、タイマーは不規則な間隔で起動しているようです。これは断続的な問題です。一部のユーザーからこの問題が報告されましたが、私は同じ問題を再現できません。
- (void)resetIdleTimer
{
if (_idleTimer)
{
[_idleTimer invalidate];
[_idleTimer release];
_idleTimer = nil;
}
_idleTimer = [[NSTimer scheduledTimerWithTimeInterval:13*60.0
target:self
selector:@selector(idleTimerExceeded)
userInfo:nil
repeats:NO] retain];
}
- (void)idleTimerExceeded
{
// do some processing
[_idleTimer release];
_idleTimer = nil;
}
条件によってはタイマーがリセット(resetIdleTimer)されますが、それでもタイマーは13分でリセットされます。
コードを調べたところ、タイマー パラメーターがセレクターに渡されていないという問題しか見つかりません。それがこの問題の理由かどうかわかりませんか? 誰かがこの種の奇妙なことに出くわしましたか? (タイマーを引数として持つようにコードを更新する方法)。1 人のユーザーは、それがちょうど 4 分後に起こったと報告しました。