Re: Solving memory leaks
Re: Solving memory leaks
- Subject: Re: Solving memory leaks
- From: Klaus Backert <email@hidden>
- Date: Sun, 28 Mar 2010 19:50:21 +0200
On 28 Mar 2010, at 19:27, Michael Davey wrote:
That would be gut for the fact that my fields are released and set
to nil whenever a new SELECT query is executed - however, I think I
can do this by emptying the array when a new query is done and just
counting the size of the array in my fetch method - thanks...
"emptying the array" is among the "etc." below ;-)
[fields removeAllObjects];
and, if you first add and then remove [all] correctly, then the
balance between retain and release of the objects in the dictionary is
not destroyed (not this way at least).
On 28 Mar 2010, at 18:11, Klaus Backert wrote:
...
In order to handle your fields instance variable correctly, what do
you think about the following:
Create fields in the init method of your "MyClass" object (I don't
know how you call this class):
fields = [[NSMutableDictionary alloc] init];
by which you retain the fields dictionary.
And destroy fields in the corresponding dealloc method:
[fields release];
fields = nil;
If you want to use the fields dictionary anywhere in your code, you
just do only calls like:
[fields addObject: ...];
[fields removeObject: ...];
MyOtherObject *myOtherObject = (MyOtherObject *)[fields
objectForKey: ...];
etc.
but you do *not* invoke methods which initialize or dealloc the
fields object.
Klaus
_______________________________________________
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