-(void) processDownloadImageData:(NSData *) imageData
{
NSString *imagePath = [NSString stringWithFormat:@"%@/avatar%@.png",document,pathuserID];
if (![imageData writeToFile:imagePath atomically:YES]) {
NSLog(@"save imageData Error with path:%@",imagePath);
}
//do anything if you want
}//接收到图片后的处理函数
-(void) loadImagebyThread:(NSString *) imageUrlStr
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSURL *imgUrl = [NSURL URLWithString:imageUrlStr];
NSData *imgData = [NSData dataWithContentsOfURL:imgUrl];
if (imgData) {
[self performSelectorOnMainThread:@selector(processDownloadImageData:) withObject:imgData waitUntilDone:NO];
}
[pool release];
}//请求图片的线程函数
在某个需要的地方添加多线程:
NSString *avatar_large_urlStr = [profileDic objectForKey:@"avatar_large"];
[NSThread detachNewThreadSelector:@selector(loadImagebyThread:) toTarget:self withObject:avatar_large_urlStr];