簡體   English   中英

ios:如何解決此 memory 泄漏警告

[英]ios: how to solve this memory leak warning

我得到以下代碼行:

mainLayer.shadowColor = CGColorCreate( CGColorSpaceCreateDeviceRGB(), components );

當我在 xcode 中運行 Product->Analyse 時,它給了我警告:

Potential leak of an object allocated on line 176

所以這意味着我不會釋放我的 CGColor。 因此,我認為一個好的解決方案如下:

CGColorRef shadowColor = CGColorCreate( CGColorSpaceCreateDeviceRGB(), components ); 
mainLayer.shadowColor = shadowColor;
CGColorRelease( shadowColor );

但我仍然收到相同的泄漏警告。 如何修復問題?

您還需要釋放色彩空間:

CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
CGColorRef shadowColor = CGColorCreate( colorspace, components ); 
mainLayer.shadowColor = shadowColor;
CGColorRelease( shadowColor );
CGColorSpaceRelease(colorspace);

這是:

CGColorSpaceCreateDeviceRGB()

通過任何更改返回 object 您負責解除分配? 我想我記得有一個像 CGColorSpaceRelease() 這樣的 function。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM