0
使用iphone sdk 4.o.我試圖在NSMutableDictionay中存儲大約10個NSTimer對象,然後通過鍵索引它們。這是爲了節省10個不同的startTimer,stopTimer函數。我已經這樣做了,但是很擔心內存泄漏問題在NSMutableDictionary中存儲NSTimer對象
下面的代碼是否安全,是否可以將定時器對象複製到字典中。 TimerList是NSMutableDictionary類型的一個屬性。
-(IBAction)startTimer:(NSNumber)identifier
{
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:7
target:self selector:@selector(timerFireMethod:)
userInfo:nil repeats:YES];
[self.TimerList setObject:timer forKey: identifier];
}
-(IBAction)stopTimer:(NSNumber)identifier
{
NSTimer* timer = [self.ReRegisterTimerList objectForKey: identifier];
[timer invalidate];
[self.TimerList setObject:nil forKey: identifier];
}
-(void)timerFireMethod:(NSTimer*)theTimer
{
if (theTimer == [self.TimerList objectForKey:someKey])
{
found = true;
// do something if its a certain timer
}
}