文档章节

NSBlockOperation下载图片(三)

不孤独的美食家
 不孤独的美食家
发布于 2015/03/22 13:34
字数 156
阅读 24
收藏 0

NSOperationQueue* queue;
- (void)viewDidLoad
{
   [super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
   queue=[[NSOperationQueue alloc]init];
   queue.maxConcurrentOperationCount=10;
}
- (IBAction)downLoadImage:(id)sender {
   NSString* url=@"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1814661700,2677631272&fm=23&gp=0.jpg";
   NSBlockOperation* operation=[NSBlockOperation blockOperationWithBlock:^{
       NSData* data=[[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:url]];
       UIImage* image=[[UIImage alloc]initWithData:data];
       if (image!=nil)
       {
           [self performSelectorOnMainThread:@selector(getImage:) withObject:image waitUntilDone:YES];
       }
       else
       {
           NSLog(@"下载出错!");
       }
       
   }];
   [queue addOperation:operation];
}
-(void)getImage:(UIImage*)image
{
   self.iv.image=image;
}

© 著作权归作者所有

不孤独的美食家
粉丝 88
博文 159
码字总数 48705
作品 1
长沙
高级程序员
私信 提问
多线程 NSThread,NSOperation,GCD

iOS中的线程 iOS主线程(UI线程),我们的大部分业务逻辑代码运行于主线程中。 没有特殊需求,不应引入线程增加程序复杂度。 应用场景:逻辑执行时间过长,严重影响交互体验(界面卡死)等。 iOS多线...

HelloSwift
2016/08/08
19
0
多线程NSOperation一般使用

一、NSOperation简介 简单说明 NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperationQueue实现多线程的具体步骤: (1)先将需要执行的操...

朝雨晚风
2016/08/22
0
0
NSThread_多线程开发 NSOperation 自带地图应用_路径导航 NSThread

//NSThread多线程开发 #import "ViewController.h" #define ROW 5 #define COLUMN 3 #define IMAGECOUNT ROWCOLUMN #define WIDTH 100//图片宽 #define HEIGHT WIDTH//图片高 @interface Vie......

TimeConcept
2015/12/24
18
0
tableViewCell cell 图片网络下载的 基本处理原理

#import "HMAppsViewController.h" #import "HMApp.h" @interface HMAppsViewController () /** * 所有的应用数据 / @property (nonatomic, strong) NSMutableArray apps; / * 存放所有下载操......

Daniel_s
2015/12/03
35
0
NSOperationQueue

NSOperation的作用配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperationQueue实现多线程的具体步骤先将需要执行的操作封装到一个NSOperation对象中然后将NSO...

5vinsEnt
2016/05/25
10
0

没有更多内容

加载失败,请刷新页面

加载更多

通过微服务来正确实施SOA

对于组织来说,能够构建、发展和扩展大型应用程序是至关重要的, 但所涉及的挑战使其成为一项艰巨的任务。正因为如此, 微服务凭借能够将单个组件拆分成围绕特定业务功能的独立服务,已成为构建...

Linux就该这么学
10分钟前
1
0
从 Spark 到 Kubernetes — MaxCompute 的云原生开源生态实践之路

2019年5月14日,喜提浙江省科学技术进步一等奖的 MaxCompute 是阿里巴巴自研的 EB 级大数据计算平台。该平台依托阿里云飞天基础架构,是阿里巴巴在10年前做飞天系统的三大件之分布式计算部分...

阿里云官方博客
13分钟前
0
0
使用python来操作redis用法详解

1、redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类,用于向后兼容旧版本的red...

dragon_tech
14分钟前
1
0
给研发工程师的代码质量利器 | SOFAChannel#5 直播整理

> SOFA:Channel,有趣实用的分布式架构频道。 > > 本文根据 SOFAChannel#5 直播分享整理,主题:给研发工程师的代码质量利器 —— 自动化测试框架 SOFAActs。 > > 回顾视频以及 PPT 查看地址...

SOFAStack
16分钟前
0
0
段错误总结

https://blog.csdn.net/e_road_by_u/article/details/61415732 一、段错误是什么 一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址、访问...

悲催的古灵武士
17分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部