• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Memory Leaks and ARC
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Memory Leaks and ARC


  • Subject: Re: Memory Leaks and ARC
  • From: Quincey Morris <email@hidden>
  • Date: Tue, 22 Apr 2014 16:18:53 -0700

On Apr 22, 2014, at 15:18 , Dave <email@hidden> wrote:

> I assumed that ARC would release myImage on each interation of the loop, however, this seems not to be the case

The ‘myImage’ variable gives up *ownership* of the previous image object when you create a new one in the loop, but whether that leads to a deallocation of the object is an implementation detail. If it’s autoreleased anywhere in its [short] lifetime, the image object will linger in the autorelease pool until the pool is drained, as Keary said.

If you want to avoid autoreleases, you should ensure that the image is returned from the download method with +1 ownership semantics. As far as that method is concerned, you can do this by changing its name to start with ‘new…’, or decorate its declaration with ‘__attribute__((ns_returns_retained))’. You would, of course, have to ensure that the download method and the methods it calls don’t do anything else that’s likely to retain/autorelease the image.

This sort of thing is a bit messy because it relies on presumed (but partially documented) knowledge of the ARC implementation. It’s more robust and straightforward to do what Keary says. However, if you really wanted to avoid autoreleases completely, there are ARC strategies that can help.

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: Memory Leaks and ARC
      • From: Dave <email@hidden>
    • Re: Memory Leaks and ARC
      • From: Varun Chandramohan <email@hidden>
References: 
 >Memory Leaks and ARC (From: Dave <email@hidden>)

  • Prev by Date: Re: Strange toolbar/view/resize cursor interaction
  • Next by Date: Re: Strange toolbar/view/resize cursor interaction
  • Previous by thread: Re: Memory Leaks and ARC
  • Next by thread: Re: Memory Leaks and ARC
  • Index(es):
    • Date
    • Thread