的使用,我有四个运算如下澄清大中央调度
- 开始actvityindicator来完成。
- 做一些caclulations。 (在bg线程中)
- 将结果保存为xml。(在bg线程中)
- 停止actvityindicator。
现在我正在GCD中进行如下操作。
[self showAlert];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
[self calculateValues];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
[utility createXMLWithName:name];
dispatch_sync(dispatch_get_main_queue(), ^{
[self hideAlert];
});
});
});
我想确认这是在GCD中执行此操作的正确方法吗?我需要bg中的任务2和3,并且任务3只有在任务2完成后才会发生。为此,我把任务2和3放在单独的队列中。