对编程语言的基础知识:分支、选择、循环、面向对象等基本概念后,我们需要对java高级编程有一定的学习,这里不可避免的要接触到多线程开发。由于多线程开发整体的系统比较大,我会写一个系列的文章总结介绍 多线程开发的概念、使用、线程状态、同步、线程池。希望与大家共勉。在第一部分,也就是本节我们先介绍下 什...
分类:
编程语言 时间:
2015-02-07 01:40:57
阅读次数:
261
在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度。生产者线程和消费者线程在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必...
分类:
其他好文 时间:
2015-01-29 14:29:39
阅读次数:
187
今天看到了NSRunloop,其实之前也有看了关于NSRunloop的内容,在这里想简单的就个人的理解总结一下。其实自己在开发的过程当中,还没有更多的涉及到NSRunloop的功能。总的来说,NSRunloop就是类似于windows的消息机制。他的存在是给线程增加事件处理机制。对于多线程开发而言,...
分类:
其他好文 时间:
2015-01-18 17:10:27
阅读次数:
269
// 创建线程方式1
- (void)test1
{
// 实例化一个线程对像
NSThread *thread = [[NSThread
alloc]
initWithTarget:self
selector:@selector(run)
object:nil];
// 让线程开始工作,启动线程, 在新开的线程执行run方法
[...
分类:
移动开发 时间:
2015-01-16 10:12:17
阅读次数:
159
从事Java多线程开发的程序员来说,了解Java的线程池实现原理是必不可少的,以下将会结合Java线程池代码来说明它的实现原理,首先,我们要思考:线程池的表现形式线程池里面的线程什么时候创建线程池里面的线程什么时候结束或者该不该结束线程池的实现原理说道Java线程池就不得..
分类:
编程语言 时间:
2015-01-14 18:20:49
阅读次数:
340
本文主要是介绍进程(Process)、应用程序域(AppDomain)、.NET上下文(Context)的概念与操作。
虽然在一般的开发当中这三者并不常用,但熟悉三者的关系,深入了解其作用,对提高系统的性能有莫大的帮助。
在本篇最后的一节当中将会介绍到三者与线程之间的关系,希望对多线程开发人员能...
概要
GCD的全称是Grand Central Dispatch(译为中心调度队列?),可以理解为线程管理队列,是苹果公司为多核的并行运算提出的解决方案,能够根据系统环境自适应线程管理,基本属于全自动的线程管理。
在GCD里面,任务需要放到队列里面执行,队列根据自身属性分发任务执行,不过原则总是FIFO。队列分为串行和并行队列,串行队列是队列里面只有一个线程,所以队...
分类:
移动开发 时间:
2015-01-01 16:07:14
阅读次数:
191
概要
使用NSThread的例子,线程创建、启动、线程同步、锁、线程的交互,需要注意的时线程的交互,因为IOS规定只有主线程能够修改UI,所以如果子线程要修改UI的话,需要与主线程交互,即调用方法- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wai...
分类:
移动开发 时间:
2014-12-31 18:37:14
阅读次数:
172
1-延迟执行可以安排其线程(1),主队列 dispatch_queue_t queue= dispatch_get_main_queue(); dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER...
分类:
移动开发 时间:
2014-12-30 15:11:06
阅读次数:
130
/** *获取全局并发队列 */ dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); // 1.添加到异步任务队列中执行,开启新线程 dispatch_async...
分类:
移动开发 时间:
2014-12-30 15:03:23
阅读次数:
169