我打算使 NSOperationQueue 串行而不是并发。
我知道的一种方法是:
NSOperationQueue *globalQueue;
globalQueue.maxConcurrentOperationCount =1;
还有其他方法吗?
我打算使 NSOperationQueue 串行而不是并发。
我知道的一种方法是:
NSOperationQueue *globalQueue;
globalQueue.maxConcurrentOperationCount =1;
还有其他方法吗?
如果您想要一个串行队列,您可以将 maxConcurrentOperation 设置为 1。您也可以使用 [NSOperationQueue mainQueue] 而不是创建一个新队列,从而在主线程上进行队列操作。但这仅在添加非常短的操作并且不会阻止用户界面时才有用。另一方面,您不必担心线程 n 同步。
您可以使用 addOperations:waitUntilFinished:YES 向任何队列添加操作,或者在每次添加操作时发送消息 waitUntilAllOperationsAreFinished。这样您就可以序列化操作,而不是将队列定义为串行。