Objective-C на iPhone - использование NSOperationQueue и NSInvocationOperation - PullRequest
0 голосов
/ 01 марта 2012

У меня есть UITableViewController, который я заполняю данными из веб-службы. Пока данные загружаются, я использую NSInvocationOperation с NSOperationQueue для запуска вызова веб-службы в фоновом потоке при отображении индикатора прогресса в пользовательском интерфейсе. Все это прекрасно работает, но я просто хочу убедиться, что я правильно обрабатываю объекты. Мой код выглядит следующим образом:

NSOperationQueue *backgroundTaskQueue = [[NSOperationQueue alloc] init];
NSInvocationOperation *webServiceOp = [[NSInvocationOperation alloc]
                                        initWithTarget:self
                                        selector:@selector(loadListDataOperation)
                                        object:nil];
[backgroundTaskQueue addOperation:webServiceOp];
[webServiceOp release];

Мои знания по управлению памятью говорят мне, что в какой-то момент я должен выпустить backgroundTaskQueue, но не уверен, где - это должно быть просто в методе dealloc () UITableViewController?

Любая помощь приветствуется,

Jonathan

1 Ответ

0 голосов
/ 01 марта 2012

Да, вы должны освободить очередь, если вы ее выделили.dealloc метод был бы идеальным местом для этого.

...