Я немного не уверен в том, как это сделать:Содержите ссылку на NSThread и сообщите ее объекты?
Я запускаю «рабочий поток», который работает в течение срока действия моих приложений «жизнь».
[NSThread detachNewThreadSelector:@selector(updateModel) toTarget:self withObject:nil];
затем
- (void) updateModel {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
BackgroundUpdate *update = [[BackgroundUpdate alloc] initWithTimerInterval:5];
[[NSRunLoop currentRunLoop] run]; //keeps it going 'forever'
[update release];
[pool release];
}
Теперь поток "просыпается" каждые 5 секунд (initWithTimerInterval), чтобы увидеть, если есть какие-либо задачи, которые она может сделать. Все задачи в BackGroundUpdate Class зависят только от времени. Я хотел бы иметь несколько, которые были «зависимыми от событий». например Я хотел бы вызвать фоновый объект из моего основного потока и рассказать ему «speedUp», «slowDown», «reset» или любой метод объекта.
Для этого я думаю, мне нужно что-то вроде performSelectorOnThread
, но как получить ссылку на NSthread и фоновый объект?
Спасибо, bdrister. В последнее время я использую NSOperation для многих вещей, это требует немного привыкания, но это действительно окупается. Такой сложный материал, где он может быть оправдан = Подкласс NSoperation, простой одноразовый материал отделяет или выполняетSelector. Еще раз спасибо. – RickiG