E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
iOS多线程
ios多线程
-- 线程安全
多线程的安全隐患资源共享一块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源.比如多个线程访问同一个对象、同一个变量、同一个文件.当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题.例如:一个售票系统中,多个线程同时读写剩余的票数,那么就会引起数据错乱.代码演示:#import"ViewController.h"@interfaceViewController()@prope
zper
·
2016-06-24 23:09
iOS开发
多线程
ios开发笔记
ios多线程
ios多线程
- NSThread 简介
NSThread的创建和使用1)实例化创建,需要主动开启线程//创建线程,需要手动启动/**selector:自定义方法*object:给函数传递的参数(例如:下载方法中网址)*/NSThread*thread=[[NSThreadalloc]initWithTarget:selfselector:@selector(downLoad:)object:@"url"];//启动[threadstar
zper
·
2016-06-24 22:55
iOS开发
多线程
ios开发笔记
ios多线程
iOS 工程师应该掌握哪些技能?
Objective-CObjective-C语言基础library,framework的制作Runtime编程LLVM原理和调优操作系统iOS内存管理和调优iOS的文件系统和沙盒机制
iOS多线程
编程(Thread
ceshi986745
·
2016-06-20 11:00
iOS多线程
原文出处:容芳志的博客简介iOS有三种多线程编程的技术,分别是:(一)NSThread(二)CocoaNSOperation(三)GCD(全称:GrandCentralDispatch)这三种编程方式从上到下,抽象度层次是从低到高的,抽象度越高的使用越简单,也是Apple最推荐使用的。三种方式的优缺点介绍:1)NSThread:优点:NSThread比其他两个轻量级缺点:需要自己管理线程的生命周期
Asserts
·
2016-06-14 15:34
iOS多线程
之线程安全和GCD
在iOS中多线程一直是不可或缺的一部分,下面就说几种多线程的使用,下面介绍一种多线程使用的经典场景首先我们介绍NSThread创建线程_thread1=[[NSThreadalloc]initWithTarget:selfselector:@selector(run)object:nil];_thread2=[[NSThreadalloc]initWithTarget:selfselector:@
此生长安
·
2016-06-02 19:06
线程篇
[置顶]
iOS多线程
篇:NSThread简单介绍和使用
一、什么是NSThreadNSThread是基于线程使用,轻量级的多线程编程方法(相对GCD和NSOperation),一个NSThread对象代表一个线程,需要手动管理线程的生命周期,处理线程同步等问题。二、NSThread方法介绍1)动态创建1NSThread * newThread = [[NSThread alloc]initWithTarget:selfselector:@selecto
hbblzjy
·
2016-06-02 12:00
多线程
线程
NSTread
IOS多线程
实现多图片下载(一)
在没有步入正文之前先给大家展示下效果图,如果大家觉得很满意请继续往下阅读全文。 大家可以看到这个界面很简单,其实就是UITableView的布局,但是难点是在于如何从网上下载这些图片,下载之后应如何进行存储!我们一步一步进行解析,先从单线程(主线程)进行多图片下载我们布局上的文字及图片的地址从plist文件中进行读取 根据结构,我们自定义一个数据模型文件DDZApp.h?12345678910#
呦呦Code
·
2016-05-31 22:00
iOS 一篇文章搞定GCD
想了解NSOperation与GCD的区别可参考
iOS多线程
之NSOperation及简单练习文章内容较长,介绍下主要的目录一、GCD介绍二、任务的执行:同步、异步与栅栏三、队列四、代码使用示例五、一次性执行及单例创建六
肥猫记
·
2016-05-29 21:30
iOS多线程
知识总结
多线程基本概念单核CPU,同一时间cpu只能处理1个线程,只有1个线程在执行。多线程同时执行:是CPU快速的在多个线程之间的切换。如果线程数非常多,线程切换会消耗大量的cpu资源。相同时间内,每个线程被调度的次数会降低,线程的执行效率降低。优点:能适当提高程序的执行效率能适当提高资源的利用率(CPU&内存)线程上得任务执行完后自动销毁缺点:开启线程需要占用一定的内存空间(默认情况下,每一个线程都占
WeiHing
·
2016-05-29 15:55
iOS多线程
的初步研究(十)-- dispatch同步
原文地址 http://www.cnblogs.com/sunfrog/p/3243230.htmlGCD提供两种方式支持dispatch队列同步,即dispatch组和信号量。一、dispatch组(dispatchgroup)1.创建dispatch组dispatch_group_tgroup=dispatch_group_create(); 2.启动dispatch队列中的block关联到g
xiongbaoxr
·
2016-05-26 14:00
Dispatch
gcd
IOS 多线程知识学习
第一篇:关于
iOS多线程
,你看我就够了第二篇:GCD使用经验与技巧浅谈都很不错,还有很多关联文章,慢慢学!!!多看原帖!!!
John_LS
·
2016-05-18 15:01
iOS多线程
中performSelector: 和dispatch_time的不同
iOS中timer相关的延时调用,常见的有NSObject中的performSelector:withObject:afterDelay:这个方法在调用的时候会设置当前runloop中timer,还有一种延时,直接使用NSTimer来配置任务。这两种方式都一个共同的前提,就是当前线程里面需要有一个运行的runloop并且这个runloop里面有一个timer。我们知道:只有主线程会在创建的时候默认
lcg910978041
·
2016-05-18 14:00
iOS多线程
介绍
一、前言部分最近在面试,重新温习了一遍多线程,希望加深一遍对于多线程的理解。1、什么是进程?1).要了解线程我们必须先了解进程,通俗来讲进程就是在系统中运行的一个应用程序。2).每个线程之间是独立存在的,分别运行在其专用的且受保护的内存空间中。3).比如打开QQ或Xcode系统会分别开启两个进程如图:4)、我们可以通过"活动监视器"查看Mac系统中所开启的进程。2、什么是线程?1).一个进程要想执
湖南金刚
·
2016-05-15 15:27
iOS多线程
GCD
iOS多线程
GCD创建dispatch_queue_totherQ=dispatch_queue_create(“name”,NULL);//NULL默认串行队列获取主队列dispatch_queue_tmainQ
u011263484
·
2016-05-11 17:00
多线程
ios
Objective-C
gcd
iOS多线程
开发――NSThread浅析
在iOS开发中,多线程的实现方式主要有三种,NSThread、NSOperation和GCD,我前面博客中对NSOperation和GCD有了较为详细的实现,为了学习的完整性,今天我们主要从代码层面来实现NSThread的使用。案例代码上传至https://github.com/chenyufeng1991/NSThread。(1)初始化并启动一个线程-(void)viewWillAppear:(
乞力马扎罗的雪雪
·
2016-05-09 10:35
iOS多线程
开发——NSThread浅析
在IOS开发中,多线程的实现方式主要有三种,NSThread、NSOperation和GCD,我前面博客中对NSOperation和GCD有了较为详细的实现,可以参考《
iOS多线程
开发——NSOperation
乞力马扎罗的雪CYF
·
2016-05-09 01:42
iOS开发
iOS开发技术分享
iOS多线程
开发——NSThread浅析
在IOS开发中,多线程的实现方式主要有三种,NSThread、NSOperation和GCD,我前面博客中对NSOperation和GCD有了较为详细的实现,可以参考《
iOS多线程
开发——NSOperation
CHENYUFENG1991
·
2016-05-09 01:00
多线程
NSThread
iOS多线程
开发——NSThread浅析
在IOS开发中,多线程的实现方式主要有三种,NSThread、NSOperation和GCD,我前面博客中对NSOperation和GCD有了较为详细的实现,可以参考《
iOS多线程
开发——NSOperation
CHENYUFENG1991
·
2016-05-09 01:00
多线程
NSThread
iOS三种多线程编程的技术介绍
、NSThread 2、CocoaNSOperation (
iOS多线程
编程之NSOperation和NSOperationQueue的使用)3、GCD 全称:GrandCentralDispatch
u011774517
·
2016-05-08 10:00
iOS多线程
iOS有三种多线程编程技术,分别是: 1)NSThread 2)NSOperation 3)GCD(全称:GrandCentralDispatch) 这三种编程方式从上到下,抽象度层次是从低到高的,抽象度越高的使用越简单,也是Apple最推荐使用的三种方式的优缺点:1)NSThread:优点:NSThread比其他两个轻量级缺点:需要自己管理线程的生命周期,线程同步。线程同步对数据的加锁会有
qq_33140415
·
2016-05-07 13:00
多线程
iOS多线程
(3)GCD
1)GCD基本知识01两个核心概念-队列和任务 02同步函数和异步函数 (2)GCD基本使用【重点】01异步函数+并发队列:开启多条线程,并发执行任务 02异步函数+串行队列:开启一条线程,串行执行任务 03同步函数+并发队列:不开线程,串行执行任务 04同步函数+串行队列:不开线程,串行执行任务 05异步函数+主队列:不开线程,在主线程中串行执行任务 06同步函数+主队列:不开线程,串行执行任务
kdlylx
·
2016-05-06 10:00
多线程
ios
iOS多线程
(2)基本使用
2.pthread(1)pthread的基本使用(需要包含头文件#import/*第一个参数:线程对象第二个参数:线程属性第三个参数:void*(*)(void*)指向函数的指针第四个参数:传递给该函数的参数*/ intpthread_create(pthread_t*__restrict,constpthread_attr_t*__restrict, void*(*)(void*),void*_
kdlylx
·
2016-05-06 09:00
多线程
ios
iOS多线程
(1)基本概念
1.1进程进程是指在系统中正在运行的一个应用程序。每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内。1.2线程(1)基本概念1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程),线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行。 (2)线程的串行1个线程中任务的执行是串行的,如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务。也就是说
kdlylx
·
2016-05-06 08:00
ios
iOS多线程
- GCD
GCD全称GrandCentralDispatch,可翻译为『牛逼的中枢调度器』。GCD是纯C语言,提供了非常强大的函数。一、GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案GCD会自动利用更多的CPU内核(比如双核,四核)*GCD会自动管理线程的生命周期(创建线程,调度任务,销毁线程)程序只需要告诉GCD想要执行的任务,不需要编写任何线程管理代码。二、任务和队列GCD中有2个核心概念任
yangmeng13930719363
·
2016-05-05 16:00
多线程
ios
iOS线程初探(四) GCD 和 NSOperation 小结
参考资料:关于
iOS多线程
,看我就够了GCD在GCD中,有两个概念很重要,那就是任务和队列。任务:其实就是你需要做的事情,一个Block而已。任务有两种执行方式:同步执行和异步执行。
koptop
·
2016-05-04 17:23
iOS
iOS多线程
原帖地址一、什么是进程?进程是指系统中正在运行的一个应用程序。每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内。比如同时打开QQ、Xcode,系统就会分别启动2个进程。通过『活动监视器』可以查看Mac系统中所开启的进程。二、什么是线程?1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程)。一个进程(程序)的所有任务都在线程中执行。比如使用酷狗音乐、使用迅雷下载电影,都需
yangmeng13930719363
·
2016-05-04 13:00
多线程
ios
线程
iOS多线程
开发——GCD的使用与多线程开发浅析
我在前面的博客中《GCD实践——串行队列/并发队列与
IOS多线程
详解》中对iOS中的同步异步、串行并行做了较为详细的讲解。在之后的几篇GCD实践的博客中对GCD的使用也有较为详细的实现。
CHENYUFENG1991
·
2016-04-29 18:00
多线程
ios
gcd
iOS多线程
开发————GCD的基本使用
在此小编做一个自我学习的总结和对iOS开发新新人的小小福利吧。直奔主题的吧,讲讲GCD:GrandCentralDispatch(多线程优化技术),是Apple提供的一套更底层,更高效的并发编程技术,属于纯C语言编写,基于Block实现的,支持同步或者异步任务处理,串行或并行的处理队列,非系统调用的信号量机制,定时任务处理、进程、文件或者网络监听任务等。特别的:GCD可以自动的根据系统负载来增减线
Lerryteng
·
2016-04-24 23:00
多线程
ios开发
iOS多线程
开发之GCD
多线程概念线程线程指的是:1个CPU执行的CPU命令列为一条无分叉路径多线程这种无分叉路径不止一条,存在多条即为"多线程".在多线程中,1个CPU核执行多条不同路径上的不同命令.需要明确的是:不管CPU技术如何,基本上1个CPU核一次能够执行的CPU命令始终为1.使用多线程的程序可以在某一个线程和其他线程之间反复进行上下文切换,因此,看上去好像1个CPU能够并列的执行多个线程一样,而在具有多个CP
我系哆啦
·
2016-04-23 16:58
iOS多线程
编程之GCD
本文的写作目的是为学习记录,同时分享给大家,希望大神能够对文中错误的理解进行指正。如果文章内容涉及到其他已经发表了,但文章中又未提及转载事项,请及时与本人联系。本文为个人理解,如果部分知识点与真实情况有出入,请忽略本文。1iOS和OSX中多线程基本概念1.1了解GCD1.1.1iOS和OSX中,实现多线程编程的方式。NSThread,调用方便,但需要手动管理线程生命周期,功能较简单,适用于简单实现
油菜小白
·
2016-04-22 21:07
iOS多线程
——Dispatch Source
使用DispatchSource而不使用dispatch_async的唯一原因就是利用联结的优势。联结的大致流程:在任一线程上调用它的一个函数dispatch_source_merge_data后,会执行DispatchSource事先定义好的句柄(可以把句柄简单理解为一个block)。这个过程叫Customevent,用户事件。是dispatchsource支持处理的一种事件。简单地说,这种事件
未之
·
2016-04-19 13:19
关于
iOS多线程
,你看我就够了
在这篇文章中,我将为你整理一下iOS开发中几种多线程方案,以及其使用方法和注意事项。当然也会给出几种多线程的案例,在实际使用中感受它们的区别。还有一点需要说明的是,这篇文章将会使用Swift和Objective-c两种语言讲解,双语幼儿园。OK,let'tbegin!概述这篇文章中,我不会说多线程是什么、线程和进程的区别、多线程有什么用,当然我也不会说什么是串行、什么是并行等问题,这些我们应该都知
·
2016-04-19 10:00
IOS多线程
下载图片
ViewController.h#import @interfaceViewController:UIViewController{ UIImageView*imageView; } @property(nonatomic,retain)IBOutletUIImageView*imageView; @end上面定义一个imageViewViewController.m#import"Vie
u014571132
·
2016-04-18 19:00
ios
ios多线程
操作(十二)—— 自定义NSOperation实现网络下载后回调
NSoperation作为一个抽象类,本身不具备封装操作的能力,所以必须使用它的子类来实现多线程操作,但当子类也无法达到我们的需求时,我们可以自定义一个NSoperation的子类,自己写实现方法! 自定义NSoperation的步骤很简单,只要重写main方法,在里面实现想执行的异步任务,但如果是异步操作,也就无法访问到主线程的自动释放池,所以需要自己手动创建自动释放池! 现在我们来实现
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(十一)—— NSOperation的高级操作
NSOperation可以调用start方法来执行任务,但默认是同步执行的,如果将NSOperation添加到 NSOperationQueue(操作队列)中,系统会自动异步执行队列中的操作。 NSOperationQueue中可以对操作进行取消,暂停和恢复 取消函数为: [objc] viewplain copy - (void)cancelAllOperations; 也可
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(八)—— GCD调度组
有这么一个需要,分别执行2个耗时的异步操作,等2个异步操作都执行完毕后在回到主线程执行操作。如果想要快速高效地实现这个需求,可以考虑使用调度组。调度组的创建代码如下:[objc] viewplain copy dispatch_group_t group = dispatch_group_create(); 往调度组里面添加任务的函数如下:[objc] viewplain copy dispat
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(七)—— GCD延迟操作与一次性代码
使用GCD函数可以进行延时操作,该函数为[objc] viewplain copy dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ }); 现在我们来分解一下参数dispatch_time(D
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(六)—— GCD全局队列与主队列
GCD默认已经提供了全局的并发队列供整个应用使用,所以可以不用手动创建。 创建全局队列的函数为[objc] viewplain copy dispatch_queue_t q = dispatch_get_global_queue(long identifier, unsigned long flags) 参数类型为:longidentifier:ios8.0告诉队列执行任务的“服务质量q
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(五)—— GCD串行队列与并发队列
GCD的队列可以分为2大类型,分别为串行队列和并发队列 串行队列(SerialDispatchQueue): 一次只调度一个任务,队列中的任务一个接着一个地执行(一个任务执行完毕后,再执行下一个任务) 创建一个队列 dispatch_queue_t q= dispatch_queue_create(constchar*label,dispatch_queue_attr_tattr
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(四)—— GCD核心概念
GCD全称GrandCentralDispatch,可译为“大派发中枢调度器”,以纯C语言写成,提供了许多非常强大的函数。GCD是苹果公司为多核的并行运算提出的解决方案,它可以自动利用更多的CPU内核来参与运算,会自动管理线程的生命周(创建线程、调度任务、销毁线程),而程序员只需要告诉GCD想要执行什么任务,不需要编写任何线程管理代码! GCD中有两个核心概念,一是任务,二是队列。 任务:
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(三)—— 线程通讯
一个进程中,线程并非单独存在,往往需要与其他线程进行通讯以执行特定的任务。接下来就用一个简单的例子来实现线程之间最简单的通讯,并借此探究一下UI控件下得常见设置 需求:从网络上下载一张图片在屏幕上显示,图片可以滚动,可以捏合缩放大小效果如下:开始图片没有显示是因为正在从网上下载 项目开搞新建一个新项目。因为视图有滚动的需求,所以需要添加一个UIScrollView以及一个显示图片的U
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(二)—— NSThread的应用
一、基本使用1、三种创建子线程的方法(1)NSThread直接创建,一个NSThread对象就代表一条线程[objc] viewplain copy//实例化一个 NSThread对象 NSThread *t1 = [[NSThreadalloc]initWithTarget:selfselector:@selector(longOperation:)object:@"NSThread"
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
ios多线程
操作(一)—— 多线程基础与原理
一、进程 进程是指在系统中正在运行的一个应用程序,每个进程之间都是独立的,每个进程都运行在其专用且受保护的内存空间内二、线程 一个进程要想执行任务就必须要有线程,每一个进程至少都要有一条线程。 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行。 线程又分为主线程和子线程: 主线程:一个ios程序运行后,默认会开启一条线程,称为“主线程”或“UI线程”,ios上任何UI
WUWUWEIWEILONGLONG
·
2016-04-16 11:00
iOS多线程
实现——GCD使用详解
一、介绍GCD,英文全称是GrandCentralDispatch(功能强悍的中央调度器),基于C语言编写的一套多线程开发机制,因此使用时会以函数形式出现,且大部分函数以dispatch开头,虽然是C语言的但相对于苹果其它多线程实现方式,抽象层次更高,使用起来也更加方便。它是苹果为应对多核的并行运算提出的解决方案,它会自动利用多核进行并发处理和运算,它能提供系统级别的处理,而不再局限于某个进程、线
时间已静止
·
2016-04-13 20:53
iOS多线程
编程之NSOperation
多线程编程之NSOperation类一、 基本了解1、 NSOperation类是一个抽象类(不能直接使用),其子类有NSBlockOperation和NSInvocationOperation,(swift中取消,因为不安全)及自定义NSOperation的子类(继承是需要实现其Main方法)2、 NSOperation和NSOperationQueue分别对应GCD的任
qq_14920635
·
2016-04-12 16:00
多线程
编程
ios开发
iOS 多线程入门
一、
iOS多线程
iOS多线程
开发有三种方式:1.NSThread 2.NSOperation 3.GCD iOS在每个进程启动后都会创建一个主线程,更新UI要在主线程上,所以也称为UI线程,是其他线程的父线程
qq_28142539
·
2016-04-11 22:00
多线程
ios
iOS学习笔记11-多线程入门
一、
iOS多线程
iOS多线程
开发有三种方式:NSThreadNSOperationGCDiOS在每个进程启动后都会创建一个主线程,更新UI要在主线程上,所以也称为UI线程,是其他线程的父线程。
liuting5521826
·
2016-04-11 15:00
多线程
ios
线程
iOS多线程
开发系列之(三)Grand Central Dispatch(GCD)
上两篇介绍了NSThread和NSOperation的用法,这篇是对第三种多线程开发GCD的介绍介绍:GCD是苹果公司在iOS4+以后推出的多线程技术,也是苹果着力推荐的,由于基于C语言开发的,所以它的高效性无与伦比的,但学习难度可能在其他两个之上。创建串行队列使用dispatch_queue_create函数使用主队列:使用dispatch_get_main_queue()获得主队列dispat
IT_DS
·
2016-04-10 19:00
多线程
async
block
gcd
iOS多线程
-SDWebImage简单介绍 1 设置imageView的图片 (内存缓存&磁盘缓存) 1 [cell.imageView sd_setImageWithURL:[NSURL URL
iOS多线程
-SDWebImage简单介绍1 设置imageView的图片(内存缓存&磁盘缓存)1[cell.imageViewsd_setImageWithURL:[NSURLURLWithString
vs_the_old_boy
·
2016-04-10 17:00
iOS多线程
编程——GCD与NSOperation总结
iOS多线程
编程——GCD与NSOperation总结很长时间以来,我个人(可能还有很多同学),对多线程编程都存在一些误解。
qq_33777090
·
2016-04-06 17:00
上一页
17
18
19
20
21
22
23
24
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他