キューとタイマーをくっつけたクラス
よくある疑似イベントループもどきのクラスを書いた。
テスト用に書いたので実用になるかどうかは不明。
使い方は、こんな感じ。
{
.
.
.
timerQueue = [[MTLTimerQueue timerQueueWithTarget:self
action:@selector(logObject:)
firstInterval:1.0
continueInterval:0.1] retain];
[timerQueue enqueue:@"+1"];
[timerQueue enqueue:@"+2"];
[timerQueue enqueue:@"+3"];
[timerQueue enqueue:@"+4"];
[timerQueue enqueue:@"+5"];
.
.
.
}
- (IBAction) logObject:(id)sender
{
NSLog(@"theObject => %@", sender);
}
この場合は、キューに、値を積んで1.0秒後に、0.1秒毎に積んだ値を取り出して出力する。
firstIntervalとcontinueIntervalで時間を調整する。
continueIntervalがマイナスの値の場合は、イベントループを回さないで一気に取り出す。