草庐IT

singleChartDataSet

全部标签

ios - 无法取消 OperationQueue swift 中的执行操作

我正在做一些冗长的计算以在后台线程上创建图表数据我本来是用GCD的,但是每次用户通过点击按钮过滤图表数据时,图表数据都需要重新计算,如果用户点击图表数据过滤按钮非常快(高级用户)然后图表循环在每个GCD分派(dispatch)异步完成时通过每个绘图我意识到我不能用GCD取消线程,所以我开始尝试实现一个OperationQueue我在向队列添加新操作之前调用了cancelAllOperations()队列上的操作很奇怪,有时它们看起来像是被取消了,有时似乎完成的操作不是最近放入队列的操作。我在取消正在执行的操作时也遇到了麻烦,因为当我在操作完成block中检查它时,该操作的.isCanc