Re: How to delay application quit?
Re: How to delay application quit?
- Subject: Re: How to delay application quit?
- From: Ken Thomases <email@hidden>
- Date: Mon, 24 Mar 2008 15:12:12 -0500
On Mar 23, 2008, at 8:55 PM, Samvel wrote:
I have defined class (say, Download) that uses NSURLConnection to
download something from internet. My application is Cocoa with UI.
I want to call:
[Download cancel]
and wait for notification from this class once user quits
application. Reasoning: my Download class should cancel connection
and perform some operations before object can be released in
program. Thus I can not simply deallocate Download instance in
dealloc method.
So, the idea is: instead of calling [myDownload cancel] from
dealloc method delay application quit until all steps are completed
in Download. Thus call [myDownload cancel] and wait for
Notification say DownloadCanceled. Only then deallocate object.
Is there any way to figure out when user initiated quit
application? How to delay it?
I think there should be something pretty much similar to
awakeFromNib but called at the very end upon application quit.
What Sherm told you is correct. However, I think this is largely
unnecessary.
When an application quits, it does _not_ properly release all of your
objects. Thus, their dealloc methods are generally not called. This
is a deliberate optimization since there's no point in manually
cleaning up the process memory. The kernel will completely eliminate
the process address space (and do other cleanup) when the process
exits. The TCP socket underlying the NSURLConnection will be closed,
too.
Some things may need to be cleaned up, like a temp file holding the
data for the in-progress download. For that, you can probably simply
remove the file immediately at the point of
applicationWillTerminate:. There's no need to delay the quitting in
that case.
Cheers,
Ken
_______________________________________________
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