【发布时间】:2014-12-04 12:55:50
【问题描述】:
我正在注册以接收来自CMMotionManager 的更新,如下所示:
motionManager.startDeviceMotionUpdatesToQueue(deviceMotionQueue) {
[unowned self] (deviceMotion, error) -> Void in
// ... handle data ...
}
其中deviceMotionQueue 是具有最高服务质量的NSOperationQueue,即可能的最高更新率:
self.deviceMotionQueue.qualityOfService = NSQualityOfService.UserInteractive
这意味着我经常收到更新。真的很经常。所以我想知道:如果我没有足够快地处理一次更新会发生什么?如果更新间隔比“处理数据”的执行时间短?运动管理器会丢弃一些信息吗?或者它会排队并在一段时间后耗尽内存?或者这根本不可行?
【问题讨论】:
标签: ios multithreading grand-central-dispatch nsoperationqueue core-motion