私はsimpleFTPを使用して文書情報を要求しています。以下のように、計器でメモリリークを検出します。
そして、コール ツリーで、メモリ リークが発生した場所を特定します。
メソッド「_parseListData」は次のとおりです。
- (void)_parseListData
{
NSMutableArray * newEntries;
NSUInteger offset;
// We accumulate the new entries into an array to avoid a) adding items to the
// table one-by-one, and b) repeatedly shuffling the listData buffer around.
newEntries = [NSMutableArray array];
assert(newEntries != nil);
offset = 0;
do {
CFIndex bytesConsumed;
CFDictionaryRef thisEntry;
thisEntry = NULL;
assert(offset <= self.listData.length);
bytesConsumed = CFFTPCreateParsedResourceListing(NULL, &((const uint8_t *) self.listData.bytes) [offset], self.listData.length - offset, &thisEntry);
if (bytesConsumed > 0) {
........
}
この問題を解決する方法がわかりません。
メソッド " CFFTPCreateParsedResourceListing
" はシステム メソッドであり、作成します__NSDate
( 2 番目の写真を参照)。
ここでメモリリークが発生します。