强烈的数据处理可防止UI交互生效

时间:2014-01-20 21:35:13

标签: ios cocoa-touch grand-central-dispatch lag

我正在iOS应用中进行密集的数据处理,我有一个“取消”UIButton。用户可以按下取消按钮,但由于应用程序与处理相差太远,因此点击通常不会被识别大约10秒钟。然而,我可以点击设备上的主页按钮,手机会立即进入主屏幕。

我假设Apple的主页按钮被编程为具有顶级优先级。有什么方法可以让应用程序中的取消按钮具有“最高优先级”,高于滞后动画和屏幕UI更新和滞后数据处理?我假设这与GCD有关 - 调度级别?

1 个答案:

答案 0 :(得分:1)

主队列用于所有主要的UI交互和动画。听起来你也在主线程上进行数据处理。这可能不是您想要采用的路径,但您可以考虑将数据处理任务移动到使用GCD的单独线程,而不是尝试让UIButton获得更高的优先级。