我正在使用CMMotionManager的startAccelerometerUpdatesToQueue: withHandler:方法来获取加速度计更新,并且正在创建队列这是我的代码行
[self.motionManager startAccelerometerUpdatesToQueue:[[[NSOperationQueue alloc] init] autorelease] withHandler:^(CMAccelerometerData *data, NSError *error)我不确定,但从我的调试看,NSOperationQueue似乎创建了一个并发队列,但我需要一个串行队列,以便一次执行一个块,所以我想创建一个串行队列,我尝试使用dispatch_queue_create方法,但我不能像使用NSOperationQueue那样在线使用它。
有没有办法让我排成一排呢?如果没有,我可以在哪里创建我的队列?
发布于 2012-02-17 06:03:35
经过进一步的研究,我发现NSOperationQueue和dispatch_queue_create是两个完全不同的东西,你必须在startAccelerometerUpdatesToQueue中使用NSOperationQueue : withHandler:
为了使这个队列成为串行队列,我使用了[NameQueue setMaxConcurrentOperationCount:1];,这使得它一次最多只能运行1个线程。
https://stackoverflow.com/questions/9297104
复制相似问题