次のコマンドでリークを呼び出すと、次のmallocスタックトレースがあります。
MallocStackLogging=1リーク
リーク:0x15d3cac0サイズ= 256ゾーン:DefaultMallocZone_0x7b0a000
Call stack: [thread 0xb0468000]: | thread_start | _pthread_start | __NSThread__main__ | -[NSThread main] | -[AggregatorObjCWorkQueue newThreadMainLoop] | -[NSRunLoop(NSRunLoop) runMode:beforeDate:] | CFRunLoopRunInMode | CFRunLoopRunSpecific | __CFRunLoopRun | __CFRunLoopDoSources0 | __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ | __NSThreadPerformPerform | -[NSObject performSelector:withObject:] | -[AggregatorTask run] | -[ComAppAggregatorApiSystemClientWorkerFactory_$4_$1 run] | -[ComAppAggregatorFrameworkClientSubscriptionSyncer startWithComAppAggregatorApiClient:] | -[ComAppAggregatorSyncClientSyncSubscriptionRegistry addSubscriptionWithComAppAggregatorQueryQueryXML_Subscription:] | -[ComAppAggregatorSyncClientSyncSubscriptionRegistry newSyncAndPostWithComAppAggregatorQueryQueryXML_QueryKey:] | -[ComAppAggregatorSyncClientSyncSubscriptionRegistry writeUpdateWithComAppAggregatorQueryQueryXML_QueryKey:] | -[ComAppAggregatorSyncClientSyncSubscriptionRegistry writeSubscriptions] | -[JavaUtilTreeMap putWithId:withId:] TreeMap.m:371 | -[JavaUtilTreeMap createNodeWithId:withId:] TreeMap.m:634 | -[JavaUtilTreeMap_Node init] TreeMap.m:1463 | -[IOSObjectArray initWithLength:type:] IOSObjectArray.m:42 | calloc | malloc_zone_calloc
誰かがmallocからのこのコールスタックトレースを理解するのを手伝ってもらえますか?つまり、質問を分解するには:1.スタックトレースはどのように順序付けられていますか?Class1 Method1 | Class2 Method2 | Class3 Method3:これらは何を意味しますか?
2:オブジェクトの説明の前の正と負の符号はどういう意味ですか?-[クラスメソッド]| +[クラスメソッド]
3:これらのうち、実際にリークしたのはどれですか?スタックトレースのどのオブジェクト/部分がリークしているかを正確に特定できません。
ドキュメントへのリンクは素晴らしいでしょう!