Allocates memory for an object, and returns it with retain count of
1
.You own objects you create using any method that starts with the word
alloc
or with the wordnew
.Makes a copy of an object, and returns it with retain count of
1
.If you copy an object, you own the copy. This applies to any method that contains the word
copy
where “copy” refers to the object being returned.Increases the retain count of an object by
1
.Takes ownership of an object.
Decreases the retain count of an object by
1
.Relinquishes ownership of an object.
Decreases the reference count of an object by
1
at some stage in the future.Relinquishes ownership of an object at some stage in the future.
alloc
copy
retain
release
autorelease
The rules for memory management are summarized as follows (see also “Memory Management Rules”):
Within a given block of code, the number of times you use
copy
,alloc
andretain
should equal the number of times you userelease
andautorelease
.You only own objects you created using a method whose name begins with “alloc” or “new” or contains “copy” (for example,
alloc
,newObject
, ormutableCopy
), or if you send it aretain
message.Implement a
dealloc
method to release the instance variables you own.You should never invoke
dealloc
directly (other than when you invoke super’s implementation in a customdealloc
method).
http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmPractical.html
No comments:
Post a Comment