摘要:1:ios通过抽象类NSOperation封装了gcd,让ios的多线程变得更为简单易用; 2:耗时的操作交给子线程来完成,主线程负责ui的处理,提示用户的体验 2:自定义operation继承自NSOperation,在子线程中下载图片; 3:保证图片只下载一次,还有保证下载...
分类:
移动开发 时间:
2014-06-26 13:09:37
阅读次数:
231
一、几个关键概念
1、MessageQueue:是一种数据结构,见名知义,就是一个消息队列,存放消息的地方。每一个线程最多只可以拥有一个MessageQueue数据结构。
创建一个线程的时候,并不会自动创建其MessageQueue。通常使用一个Looper对象对该线程的MessageQueue进行管理。主线程创建时,会创建一个默认的Looper对象,而Looper对象的创建,将自动创...
分类:
移动开发 时间:
2014-06-26 10:59:25
阅读次数:
307
iOS开发多线程篇—GCD的基本使用一、主队列介绍主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行。提示:如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。获取主队列的方式:dispatch_queu...
分类:
移动开发 时间:
2014-06-25 11:15:32
阅读次数:
346
http://blog.csdn.net/zk437092645/article/details/8745647用来把文件读入内存,并且读取文件中的数据。FileReader接口提供了一个异步API,使用该API可以在浏览器主线程中异步访问文件系统,读取文件中的数据。到目前文职,只有FF3.6+和C...
分类:
Web程序 时间:
2014-06-24 12:21:50
阅读次数:
233
1.进程1.1>进程是指在系统中正在运行的一个应用程序(同时打开QQ和Xcode,系统会分别启动2个进程)1.2>每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存空间内2.线程1.1>一个进程想要执行任务,必须得有线程(每个进程至少要有一条线程,即主线程)1.2>线程是进程的基本执行单元...
分类:
编程语言 时间:
2014-06-24 11:38:28
阅读次数:
229
直接上代码:
1. 第一种情况, 如果没有select{}, main 主线程不会等待coroutine运行,导致coroutine得不到机会运行。
You are requesting eventual scheduling (using the two go statements)
of two goroutines and then you exit main without g...
分类:
其他好文 时间:
2014-06-22 19:56:27
阅读次数:
261
注:此文除了例子和使用心得是自己写的,很多都是Python核心编程中的原文。原文文风应该能看出来,就不每个地方单独表明出处了。
线程(有时被称为轻量级进程)跟进程有些相似,不同的是,所有的线程运行在同一个进程中,共享相同的运行环境。它们可以想像成是在主进程或”主线程”中并行运行的“迷你进程”。
线程有开始,顺序执行和结束三部分。它有一个自己的指令指针,记录自己运行到什么地方。线程的运行可能被抢...
分类:
编程语言 时间:
2014-06-21 22:34:11
阅读次数:
346
上一篇《秒杀多线程第三篇原子操作 Interlocked系列函数》中介绍了原子操作在多进程中的作用,如今来个复杂点的。这个问题涉及到线程的同步和相互排斥,是一道很有代表性的多线程同步问题,假设能将这个问题搞清楚,那么对多线程同步也就打下了良好的基础。程序描写叙述:主线程启动10个子线程并将表示子线程...
分类:
编程语言 时间:
2014-06-20 17:34:44
阅读次数:
254