Greetings!
I ran into an issue recently where file downloads seemed to take a ridiculous
amount of time to finish, or never finished at all. I could reproduce it, even
in a stripped-down test application.
The NSURLDownload appears to pause indefinitely whenever there is no other
activity in the application. Any activity at all — a key press while the
application is in front, moving a window around, etc. — makes it continue for a
short amount of time (which can be observed in the log or in Activity Monitor's
network activity graph).
Below is the main class of a test application with a main class called
downloaderAppDelegate. The issue's reproducible for me by dropping it into a
new Xcode Cocoa application project.
What the heck is going on?
-Sidney
@implementation downloaderAppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
[[NSURLDownload alloc] initWithRequest:[NSURLRequest
requestWithURL:[NSURL URLWithString:@"ftp://ftp1.optonline.net/test64"]]
delegate:self];
}
#pragma mark NSURLDownload delegate methods
- (void)download:(NSURLDownload *)download didReceiveResponse:(NSURLResponse
*)response
{
NSLog(@"Response: %@", response);
}
- (void)download:(NSURLDownload *)d didReceiveDataOfLength:(NSUInteger)length
{
NSLog(@"received %d", length);
}
- (void)download:(NSURLDownload *)d
decideDestinationWithSuggestedFilename:(NSString *)name
{
[d setDestination:[NSHomeDirectory()
stringByAppendingPathComponent:@"Desktop/testDownload"] allowOverwrite:NO];
}
- (void)downloadDidFinish:(NSURLDownload *)d
{
NSLog(@"Download complete");
exit(0);
}
- (void)download:(NSURLDownload *)d didFailWithError:(NSError *)error
{
NSLog(@"Failed to download (%@)", [error localizedDescription]);
exit(0);
}
@end
_______________________________________________
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]