//NSThread
//1. NSLock 锁只是一个标志 表示是否需要等待 [NSLock lock] [NSLock unlock]
//2. 线程同步块 @syschronized(self){} 在执行大括内代码时,会把里面所用到的关于self对象中的变量上锁
//NSOperation
//不需要考虑线程同步的问题,把重点放在操作所做的处理上
//1. NSInvocationOperation
//2. NSBlockOperation
//3NSOperation 抽象类 需要自己去继承实现 operation加到队列中时 自动调用main方法