有没有办法在iOS中手动处理DispatchQueue

有没有办法在iOS中手动处理DispatchQueue,ios,grand-central-dispatch,Ios,Grand Central Dispatch,我正在开发一款游戏,我想通过GameKit添加云存储。原始保存代码基于同步文件I/O并阻塞主队列。离开这个设计将是一个巨大的工作量。不幸的是,GameKit API似乎在主队列上调度回调,这在本例中会导致死锁 有鉴于此,是否有办法手动处理调度队列中的块?这样,阻塞代码可以在等待回调时处理主队列,消除死锁。您可以使用操作设置责任链。设置每个操作之间的依赖关系,然后使用Grand Central Dispatch将它们放到各自的队列中 用户界面代码应该是主要的,并且对于后台任务和用户生成的活动,应该

我正在开发一款游戏,我想通过GameKit添加云存储。原始保存代码基于同步文件I/O并阻塞主队列。离开这个设计将是一个巨大的工作量。不幸的是,GameKit API似乎在主队列上调度回调,这在本例中会导致死锁


有鉴于此,是否有办法手动处理调度队列中的块?这样,阻塞代码可以在等待回调时处理主队列,消除死锁。

您可以使用操作设置责任链。设置每个操作之间的依赖关系,然后使用Grand Central Dispatch将它们放到各自的队列中

用户界面代码应该是主要的,并且对于后台任务和用户生成的活动,应该有高质量的服务。您可以创建调度队列并将其设置为同步(串行)或异步(并行)

如果您包含代码,我将发布示例。否则,关于如何执行上述操作,有几个选项