我是否必须在操作队列本身上读取NSOperationQueue的operationCount?

问题描述:

有时看起来operationCount没有返回正确的值。我是否必须从队列本身访问它,或者如果从其他线程访问它并不重要?我是否必须在操作队列本身上读取NSOperationQueue的operationCount?

+0

我会期望它是线程安全的。该文档指出'operationCount'符合KVO标准,可以从任何线程访问:'但是,与操作队列相关的KVO通知可能发生在任何线程中。链接到文档(在符合KVO的属性下):https://developer.apple.com/library/mac/documentation/Cocoa/Reference/NSOperationQueue_class/index.html。您是否尝试过KVO以查看是否报告了“更好”的数字? – 2015-02-23 14:29:29

+0

虽然是易变的 – 2015-02-23 14:30:18

“此属性返回的值反映了访问属性时的瞬时操作次数。”

它不能保证是精确/稳定的,你不应该用它来做计算/决定