Am Mi,06.08.2008 um 14:26 schrieb Jean-Daniel Dupas:

Be carefull when you mix CFType memory management, and obj-c memory management. It works well when you do not use GC, but may become problematic if you do not take special care with GC code.
IIRC, there are some rules:
1 GC respects reference counting. That means, that GC will not deallocate any instance with an RC greater than 0. 2 RC methods of objective-C (-retain, -release) are "dead". That means that no change of the RC is applied. 3 (1+2) Using GC and -retain, -release leads to the situation, that the RC is never greater than 0. So GC behaves as intended: GC respects the RC, but there is no RC to respect. (Even it works: You should not mix up GC and RC methods.) 4 RC functions of CF are still working. That means, that they do change the RC. 5 (1+4) Using CF-RC leads to the situation, that (by CF) referenced instances are not collected by the GC.

5 is a feature, because you can hold instances in memory without having a reference to it.

Amin



If I'm not wrong, it should be something like this:

[NSMakeCollectable(aCGImageRef) autorelease];


Le 6 août 08 à 12:16, Mike Abdullah a écrit :

Since CGImage is derived from CFType you can just do:

[(id)aCGImageRef autorelease]

The reason being that CFType knows how to handle a -release message, and autorelease is just a way of deferring that message.

On 6 Aug 2008, at 09:29, Peter N Lewis wrote:

Given a CGImageRef, how can I autorelease it?

Perhaps this is obvious, or perhaps its impossible, but googling hasn't found me the answer yet except for a tantalizing comment in the docs for NSBitmapImageRep:

- (CGImageRef)CGImage (added in 10.5)
"Returns an autoreleased CGImage object (an opaque type) from the receiver's current bitmap data."

For CFStringRef, I know I can cast it to an NSString* and then autorelease it, but is there an equivalent for CGImageRef?

Thanks,
Peter.

--
           Keyboard Maestro 3 Now Available!
             Now With Status Menu triggers!

Keyboard Maestro <http://www.keyboardmaestro.com/> Macros for your Mac <http://www.stairways.com/> <http://download.stairways.com/ >
_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
http://lists.apple.com/mailman/options/cocoa-dev/cocoadev%40mikeabdullah.net

This email sent to [EMAIL PROTECTED]

_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
http://lists.apple.com/mailman/options/cocoa-dev/devlists%40shadowlab.org

This email sent to [EMAIL PROTECTED]


_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
http://lists.apple.com/mailman/options/cocoa-dev/negm-awad%40cocoading.de

This email sent to [EMAIL PROTECTED]

Amin Negm-Awad
[EMAIL PROTECTED]




_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to