Утечка широковещательной памяти iOS

Я тестирую расширение трансляции ReplayKit с инструментами. Я исправил некоторые утечки в своем расширении, но некоторые утечки происходят на стороне Framework, и я не могу найти способ их устранения. Кто-нибудь знает, как исправить? Каждые 0,5 секунды происходит утечка 48 Кбайт.

Я проверил Историю адреса памяти. Дельта удержания равна +0. Сохранение и освобождение хорошо сочетаются, включая эти функции,

[_NSPlaceholderData initWithBytes:length:copy:deallocator:]
[NSXPCDecoder _decodeArrayOfObjectsForKey:]_block_invoke  
[RPBroadcastSampleHandler _processPayloadWithAudioSample:type:]_block_invoke
[RPBroadcastSampleHandler _audioBufferListFromData:]

Мой processSampleBuffer() немедленно возвращается для тестирования. Так что утечки не происходит, мой processSampleBuffer().

Скриншот инструментов Xcode


person user1418067    schedule 07.04.2018    source источник


Ответы (1)


Этот журнал стека берется инструментами Zombies. Zombies изменяет поведение отладчика autorelease(), он сохраняет автоматически выпущенный объект.

Сравнив результаты инструментов Zombies с результатами инструментов Allocations, я обнаружил, что автоматически освобождаемый объект освобождается в Allocations. Таким образом, утечки памяти на объекте не происходит.

person user1418067    schedule 10.04.2018