我使用CMMotionManager的startAccelerometerUpdatesToQueue: withHandler:
方法来获取加速度计更新,并且我在线创建队列这是我的代码行
[self.motionManager startAccelerometerUpdatesToQueue:[[[NSOperationQueue alloc] init] autorelease] withHandler:^(CMAccelerometerData *data, NSError *error)
我不确定,但是我的调试NSOperationQueue似乎创建了一个Concurrent队列,但我需要一个串行队列,以便一次执行一个块,所以我想创建一个我尝试使用的串行队列dispatch_queue_create
方法,但我无法像使用NSOperationQueue一样使用它。
有没有办法可以排队?如果没有,我可以在哪里创建我的队列?
答案 0 :(得分:2)
经过进一步研究后,我发现NSOperationQueue和dispatch_queue_create是两个完全不同的东西,你必须使用NSOperationQueue和startAccelerometerUpdatesToQueue:withHandler:
为了使这个队列序列我使用[NameQueue setMaxConcurrentOperationCount:1];
,这使得它一次最多运行1次。