Tag Archives: thread

IOS多线程安全-读者写者问题

多线程安全中,所谓读者写者:一个可变的对象,一个线程正对它修改,这时另个线程也过来了想修改它,同时进行吗?肯定不可以。

所以在多线程安全中,为了解决读者写者的线程安全问题,需要使用dispatch_barrier_async来保护可变对象:

var myArray :[Int][......]

Read more

IOS多线程安全-单例模式的应用

多线程安全中有个概念叫:临界区,意思是有一段代码,它只能被一个线程调用,这段代码就叫临界区。

在单例模式中,我们常常会判断当前类的实例是否已经存在了, 如果已存在那就返回当前的实例,如果不存在就创建一个。

传统操作下,可以使用条件语句判断,但是多线程下就不行了,为了保证当多个线程调用[……]

Read more

IOS多线程-NSThread

NSThread类,直接操作线程,适合将一个需要长时间运行的任务放到一个子线程中。

NSThread.detachNewThreadSelector("go", toTarget: self, withObject: nil)

private func go(){
    print[......]

Read more

IOS多线程-GCD使用

IOS多线程编程中,GCD是一个很方便的库,它的核心是GCD队列,所有操作都围绕着队列。

1、GCD中的三种队列

GCD中三种队列:主队列、全局队列、自定义队列。

 //创建一个全局队列,队列的优先级(Priority)为Default,第二个参数暂时保留,传0即可
let[......]

Read more