Re: Forcing finalization on the main thread?
Re: Forcing finalization on the main thread?
- Subject: Re: Forcing finalization on the main thread?
- From: Mudi Dandan <email@hidden>
- Date: Mon, 8 Sep 2008 00:50:09 +0200
What if you wrapped it in an object where you can use
performSelectorOnMainThread: for deallocation ?
On Sep 8, 2008, at 12:25 AM, Nick Zitzmann wrote:
I've got a C data structure in a GC-enabled app. I'm deallocating
the structure when the parent object is finished, in -dealloc and -
finalize. I've found out the hard way that the data structure is not
thread-safe, and eventually causes a crash if deallocated on a
thread other than the main thread. Of course, when GC is running,
most deallocations occur on another thread.
So I've looked in the documentation and haven't found anything. Is
there a way to force a collected object to be finalized on the main
thread, and nowhere else? If so, then how do I do this?
I already tried:
1. Calling -performSelectorOnMainThread:... in the -finalize method.
Of course it caused the object to be resurrected, which just made
the problem worse.
2. Allocating the parent object in an unscanned zone, hoping that
retain/release would make a comeback, but it didn't.
Nick Zitzmann
<http://www.chronosnet.com/>
_______________________________________________
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
_______________________________________________
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