文档章节

iOS开发 NSThread实际使用

神补刀
 神补刀
发布于 2015/08/18 11:29
字数 187
阅读 29
收藏 0
//
//  NSThreadViewController.m
//  DemoTest
//
//  Created by biyabi on 15/8/18.
//  Copyright (c) 2015年 test. All rights reserved.
//
#import "NSThreadViewController.h"
#import "HeadFile.h"
#define imageURL @"http://images.cnitblog.com/blog/381483/201408/221614287532594.png"
@interface NSThreadViewController ()
@property (nonatomic, strong) UIImageView *imageView;
@end
@implementation NSThreadViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    [self.view setBackgroundColor:[UIColor whiteColor]];
    self.title = @"NSThread";
    [self initUI];
    
    //创建方式一:
    //    NSThread *thread = [[NSThread alloc]initWithTarget:self selector:@selector(threadRun:) object:imageURL];
    //    [thread start];
    
    //创建方式二:
    [NSThread detachNewThreadSelector:@selector(threadRun:) toTarget:self withObject:imageURL];
    
    //这两个方式随便选择哪个都是可以的
    
}
- (void)threadRun:(NSString *)url{
    NSData *data = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:url]];
    UIImage *image = [[UIImage alloc]initWithData:data];
    if (!data) {
        return;
    }
    [self performSelectorOnMainThread:@selector(updataImage:) withObject:image waitUntilDone:YES];
}
- (void)updataImage:(UIImage *)image{
    [self.imageView setImage:image];
}
- (void)initUI{
    self.imageView = [[UIImageView alloc]initWithFrame:CGRectMake((ScreenWidth-200)/2, (ScreenHeight-200)/2, 200, 200)];
    [self.view addSubview:self.imageView];
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

本文转载自:

神补刀
粉丝 19
博文 78
码字总数 38937
作品 0
广州
程序员
私信 提问
iOS按钮倒计时在进入后台不继续计时的处理

iOS程序进入后台后十分钟之内就会被系统kill掉,我想要程序进入后台后仍然运行计时功能,怎么解决呢? 方法一:可以使用记录开始时间和获取当前时间的时间差进行处理 还是直接上代码: 下面的...

云上飞飞
2018/07/06
282
0
关于iOS多线程,这边勉强可以看看(OC&Swift)

iOS开发多线程总是绕不过的坎,看了很多前辈们优秀的文章,如:关于iOS多线程,我说,你听,没准你就懂了!、谈iOS多线程(NSThread、NSOperation、GCD)编程、iOS多线程:『GCD』详尽总结、i...

Andy_Ron
2018/08/26
0
0
iOS开发系列--并行开发其实很容易

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jianxin160/article/details/47753225 --多线程开发 概览 大家都知道,在开发过程中应该尽可能减少用户等待时...

KenshinCui
2015/08/18
0
0
React Native 源码笔记——你知道几条?

ReactNative是Facebook开源的一种实现移动跨平台开发的解决方案,目前在业界得到广泛应用,这里有非常详细的中文使用指南。本文主要分享RN源码中一些值得大家学习或者借鉴的代码或者编写技巧...

oschina
2016/07/18
3.4K
4
iOS多线程编程之一——NSThread线程管理

iOS多线程编程之一——NSThread线程管理 NSTread是iOS中进行多线程开发的一个类,其结构逻辑清晰,使用十分方便,但其封装度和性能不高,线程周期,加锁等需要手动处理。 一、NSThread类方法...

珲少
2015/05/19
930
2

没有更多内容

加载失败,请刷新页面

加载更多

Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
今天
5
0
计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部