ASIHttpRequest 经验分享

来源:互联网 发布:js触发select点击事件 编辑:程序博客网 时间:2024/06/10 06:34

iphone,ipad的网络框架很多都是用ASIHttpRequest的,这个框架整体来讲还是不错,但是有一些使用的陷阱和小缺陷

如:

 

self.request = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:imgURL]];

self.request.delegate = self;

request.didFinishSelector = @selector(requestDidFinish:);

request.didFailSelector = @selector(requestDidFail:);

[request setDownloadDestinationPath:imgFilePath];

[request setAllowResumeForFileDownloads:YES];

[request startAsynchronous];

 

在self被释放后常常出现系统Crash,这个出现在如下情况,在几个简单窗口(有网络请求的)快速切换会出现。我们常常做的是是

[request release];

可是一个request被提交后,在某个状态满足后会调用selector,当前的对象(self)被释放后,再使用就会crash.最安全的方式

self.request.delegate = nil;

[self.request cancel];

self.request = nil;

 

 


 

 

 

原创粉丝点击