Это один из моих методов.
- (void)getSearchResultsByKeyword:(NSString *)keyword
searchOptions:(NSArray *)searchOptions
searchGroupsInResult:(NSArray *)searchGroupsInResult
{
_searchKeyword = [keyword retain];
_searchOptions = [searchOptions retain];
_searchGroupsInResult = [searchGroupsInResult retain];
[_searchResultsGroups removeAllObjects];
[_searchResultsGroupsIndexToNameMap removeAllObjects];
_pageNo = 1;
[[NSNotificationCenter defaultCenter] postNotificationOnMainThreadName:SearchResultsRetrievingStartLodingNotification
object:self];
[_dataProvider startGettingSearchResultsByKeyword:self.searchKeyword
searchOptions:_searchOptions
searchGroupsInResult:_searchGroupsInResult
pageNo:_pageNo
delegate:self];
}
В моем методе я назвал retain для объектов, которые являются параметрами.Таким образом, я владел объектом и увеличил счет удержания.Поэтому моя проблема заключается в том, как уменьшить количество сохраняемых данных после вызова
[_dataProvider startGettingSearchResultsByKeyword:self.searchKeyword
searchOptions:_searchOptions
searchGroupsInResult:_searchGroupsInResult
pageNo:_pageNo
delegate:self];
.([keyword release]
или [_searchKeyword release]
) ??
В моем заголовочном файле я объявил _searchOptions
как частный экземпляр и _searchKeyword
как свойство readonly
.В моем файле реализации я выпустил оба экземпляра в dealloc
.
Я запустил инструмент Анализ, и он не показывал эту проблему как проблему.Но у меня есть сомнения в этом.
Итак, пожалуйста, покажите мне необходимый способ работы с этой штукой.
Я работаю на XCode4 и iOS 4.3.
Спасибо.