執行代碼後,我的內存使用量增加了。如何在執行後釋放內存?使用過濾器時GPUImage內存泄漏
僅當我將圖像保存在文件系統中時纔會重現該問題。任何人都可以幫助解決這個問題?
我的代碼:
let contrastfilter = GPUImageContrastFilter()
contrastfilter.contrast = 1.4
let thresholdImageFilter = GPUImageAdaptiveThresholdFilter()
thresholdImageFilter.blurRadiusInPixels = 16.0
let filterGroup = GPUImageFilterGroup()
filterGroup.addFilter(contrastfilter)
filterGroup.addFilter(thresholdImageFilter)
contrastfilter.addTarget(thresholdImageFilter)
filterGroup.initialFilters = [ contrastfilter ]
filterGroup.terminalFilter = thresholdImageFilter
let resultImage = filterGroup.image(byFilteringImage: image)
只要對象不再被引用,內存就應該釋放自己。您是否嘗試使用儀器工具來檢查內存泄漏? – TMob
可能是一些緩存。處理5張照片後,我的內存使用量增加到200 MB,並且在此空間不空閒之後。然後我得到了內存崩潰 –
使用XCode Instruments,(command + i)並選擇「Leaks」。然後像發生崩潰時那樣運行應用程序。儀器工具會告訴你在哪一行代碼中發生內存泄漏。 – TMob