子线程在后台运行: performSelectorInBackground

【多线程-第一天-NSThread-创建子线程最基本的方式演示 Objective-C语言】 阅读详情
  1. http://daimajishu.iteye.com/blog/1085729

  2.  NSLog( @"main thread begin..." );  
  3.       
  4.       
  5.     [self performSelectorInBackground: @selector(getImages) withObject: nil];  
  6.       
  7.       
  8.     NSLog( @"main thread end..." );   
  9.   
  10. - (void)getImages  
  11. {  
  12.       
  13.     NSLog( @"one thread begin..." );  
  14.       
  15.     NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];  
  16.     NSString *str_url = @"http://avatar.youkuaiyun.com/2/5/4/3_iorchid.jpg";  
  17.       
  18.     NSURL *url = [NSURL URLWithString: str_url];  
  19.     NSData *data = [NSData dataWithContentsOfURL: url];  
  20.       
  21.     UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData: data]];  
  22.     imageView.frame = CGRectMake(50, 200, 80, 40);  
  23.       
  24.     imageView.layer.cornerRadius = 6;  
  25.     imageView.layer.masksToBounds = YES;  
  26.     [self.window addSubview: imageView];  
  27.     NSLog( @"one thread end..." );  
  28.       
  29.     [pool release];  
  30.       
  31. }  
  32. 刚开始写getImages函数的时候,提示autorelease pool …leak之类的错误,后来发现,其实子进程默认不建立autoreleasepool,还得手动建立才行.  
  33. log的打印顺序每次都 不太一样,这个可能跟系统执行有关.  
PerformSelectorInBackgroundTest Demo代码 GCD 后台 多线程 并发 IOS 代码实例下载 立即下载

相关推荐

三极管自激升压电路设计 - 从参数计算到实践验证

本文详细解析了三极管自激升压电路(焦耳小偷电路)的设计原理与实践方法。通过剖析自激振荡机制与三极管电流关系,指导读者完成从核心参数计算、关键元件选型到面包板搭建调试的全过程。文章重点阐述了如何利用电感、三极管等基础元件实现低压直流到高压的转换,是理解开关电源与电磁能量转换的绝佳实践项目。

weixin_29250573的博客 367

利用performSelectorInBackground和performSelectorOnMainThread实现多线程

NSObject类的performSelectorOnMainThread和performSelectorInBackground可以实现简单的多线程编程技术 1、- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg 创建一个线程在子线程执行,aSelector代表了新创建的线程,arg是传入的参数 2、-

richard_如风的专栏 5866

FPGA实战:手把手教你实现VESA DSC编码(附Verilog代码解析)

本文详细介绍了如何使用FPGA实现VESA DSC编码器,包括核心架构设计、Verilog代码实现与优化技巧。通过流水线设计、色彩空间转换和预测编码等关键技术,帮助开发者掌握工业级DSC编码器的开发流程,并提供实用的调试与性能优化方法。

weixin_29165725的博客 404

NSThread的简单使用 及performSelectorInBackground:withObject

NSThread的简单使用 及performSelectorInBackground:withObject 在ios开发过程中,经常会遇到在服务器端获取完数据通过后台使用多线程方式自动更新UI,通常的做法有两种: 1、使用NSObject类的方法performSelectorInBackground:withObject:来创建一个线程。 具体的代码:

u011194397的专栏 936

论文地图合规求生指南:5分钟搞定标准地图服务转ArcGIS可用矢量文件

本文提供了一份论文地图合规求生指南,帮助非GIS专业背景的科研人员在5分钟内将标准地图服务的EPS文件转换为ArcGIS兼容的矢量文件。通过详细的工作流程和关键参数设置,确保地图完全符合国家规范,同时节省时间成本。重点关注标准地图服务的合规性和Shapefile转换技巧,适用于紧急情况下的论文地图处理。

weixin_34233974的博客 402

别再为Power BI瀑布图发愁了!用这个DAX公式+堆积柱状图,5分钟搞定现金流量表可视化

本文介绍了一种使用DAX公式和堆积柱状图快速实现Power BI现金流量表可视化的高效方法。通过详细的步骤和代码示例,帮助财务分析人员5分钟内完成专业级报表制作,解决传统瀑布图配置复杂、灵活性差的问题,显著提升工作效率。

weixin_28677005的博客 247

iOS开发-performSelectorInBackground 与 performSelectorOnMainThread

Cocoa框架提供了performSelectorInBackground 与 performSelectorOnMainThread两个实例方法来实现简单的多线程编程技术。

一名开发者 399

手把手教你用Siemens EDA破解工具搞定PADs VX2.7安装与卡死问题

本文详细介绍了如何使用Siemens EDA工具解决PADs VX2.7的安装与卡死问题。从License配置到性能调优,提供全面的解决方案,帮助工程师高效完成电子设计自动化任务。特别针对常见的卡顿现象,给出了输入法兼容性调整、图形性能优化等实用技巧。

k8l9m0n的博客 554

performSelectorInBackground:

performSelectorInBackground的具体含义是说,子线程在后台运行

梁老师教你编程序 2555

企业级智能知识库问答AI助手(大模型+Python)

智能知识问答库AI助手

usa_washington的博客 1655

cesium 实现经纬线绘制和经纬度标注

废话不对数直接上线效果图及代码 1.效果图 2.实现代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width,initial-scale=

一碗老面的博客 2569

NSThread的简单使用 及performSelectorInBackground:withObject

在ios开发过程中,经常会遇到在服务器端获取完数据通过后台使用多线程方式自动更新UI,通常的做法有两种: 1、使用NSObject类的方法performSelectorInBackground:withObject:来创建一个线程。 具体的代码: [Object performSelectorInBackground:@selector(doSomething:) withObj

CharlesBein_卞 1万+

GEE初学:谷歌地球引擎GEE入门指南(最新注册全流程)

本教程详细介绍了谷歌地球引擎(GEE)的注册与基础操作流程。主要内容包括:1)非商业账号注册步骤,需提供学术机构凭证和研究目的;2)Google Cloud项目创建与API激活;3)Shapefile文件上传方法及资源ID获取;4)JavaScript脚本编写与地图可视化实现。教程通过代码示例展示了两种多边形显示方式(填充和轮廓模式),并强调了GEE的云端处理优势,包括免费访问40多年卫星数据、无需本地高性能硬件等特点。整个流程从账号注册到首个地图可视化完成约需10-15分钟,适合遥感分析初学者快速入门。

此星光明博客 2142

NSThread的简单使用 及performSelectorInBackground:withObjectt和子线程开定时器

一、开线程 在iOS开发过程中,经常会遇到在服务器端获取完数据通过后台使用多线程方式自动更新UI,通常的做法有两种: 1、使用NSObject类的方法performSelectorInBackground:withObject:来创建一个线程。 具体的代码: [Object performSelectorInBackground:@selector(doSomething:

梦家之家 806

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

将ios代码在后台(子线程)执行的两种简单方式

a.使用gcd    //切换到线程中执行             dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{                 // Do the work in background                 [[MyManager shareIns

openglnewbee的博客 9181

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

performSelectorOnMainThread和performSelectorInBackground详解

NSObject类的performSelectorOnMainThread和performSelectorInBackground可以实现简单的多线程编程技术 1、- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg 创建一个线程在子线程执行,aSelector代表了新创建的线程,arg是传入的参数

Kurry的博客 879

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

子线程执行方法

1使用gcd             dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{                 // Do the work in background             }); 2.使用performSelectorInBackgr

眼泪笑了 422

iOS 中的线程(1)---①performSelectorInBackground②NSThread③NSOperation 和 NSOperationQueue 的组合

iOS里面共有四种实现多线程的方式 一、第一种实现多线程的方式: NSObject 自带了 performSelectorInBackground 二、第二种实现多线程的方式: NSThread        其中,NSThread 有2种方式 ①第一种创建 NSThread 的方式 NSThread *thread = [[NSThread alloc]initWithTar

xintailirui的专栏 673

利用performSelectorInBackground和performSelectorOnMainThread实现多线程刷新UI

NSObject类的performSelectorOnMainThread和performSelectorInBackground可以实现简单的多线程编程技术1、- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg创建一个线程在子线程执行,aSelector代表了新创建的线程,arg是传入的参数2、- (void...

weixin_30576859的博客 84

主线程和子线程中的消息循环

RunLoop-主线程主线程的消息循环是默认开启. 在主线程中使用定时源.即定时器. 步骤 : 将定时源添加到当前线程的消息循环. - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { [self timerDemo]; }- (void)timerDemo { // 创建定时器

Zok93 2047

多线程 NSThread 了解

用NSThread创建子线程的3种方法 // DYFViewController.m // 623-02-pthread // // Created by dyf on 14-6-23. // Copyright (c) 2014年 ___FULLUSERNAME___. All rights reserved. // #import "DYFVie...

bailu1020的博客 121

UI 实现多线程方式之一 NSObject

#pragma mark 方式一 NSObject         //withObject:后面表示参数,是@selector里的方法需要的参数     [self performSelectorInBackground:@selector(subThread) withObject:nil]; #p

bellazhouyi的专栏 320

IOS在子线程中使用定时器,将定时器添加至RunLoop中

NSTimer *timer = [NSTimer timerWithTimeInterval:1.0f target:self selector:@selector(timerAction) userInfo:nil repeats:YES]; //将定时器添加到runloop中 [[NSRunLoop currentRunLoop] addTimer:timer forMode:NSDefaultRunLoopMode]; [[NSRunLoop curr

张梦磊 3384
上一篇: ASIHTTPRequest 详解, http 请求终结者
下一篇: 浅谈objective-C中的description方法
think12
博客等级 码龄17年 132粉丝 173原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值