Ios dispatch\u async无法正常工作

Ios dispatch\u async无法正常工作,ios,iphone,swift,asynchronous,Ios,Iphone,Swift,Asynchronous,我在ios swift中捕获图像,并尝试在后台任务中保存图像和缩略图 使用此代码 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), { var imageSaveCall = self.storeReceiptImageToFile(imageToSave,fileName:fileName) dispatch_async(dispatch_get_

我在ios swift中捕获图像,并尝试在后台任务中保存图像和缩略图

使用此代码

 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), {

        var imageSaveCall = self.storeReceiptImageToFile(imageToSave,fileName:fileName)
        dispatch_async(dispatch_get_main_queue(), {
            println("Raw image saved")
        })

    })
 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), {

        var imageSaveCall = self.storeReceiptThumbImageToFile(imageToSave,fileName:fileName)
        dispatch_async(dispatch_get_main_queue(), {
            println("thumb image saved")
        })

    })

它可以正常工作4次,之后它甚至没有达到商店图像功能。我有什么错误吗?

一些提示:你每次都看到那些日志吗?听起来队列好像被什么东西阻塞了。如果在调试器中暂停应用程序,后台队列上会发生什么?如果您创建自己的队列而不是使用系统队列,它是否仍然失败?如果只保存大图像或缩略图,但不同时保存两者,是否会失败?是否每次都会看到这些日志?不,虽然前4次我可以看到,但其他时间没有,4次之后所有大小图像都会失败。我认为您应该将ReceiptImage和缩略图保存在两个不同的文件名中。线程可能处于死锁状态。如上所述,您应该暂停执行并观察线程堆栈。你可能会发现一个
陷阱
或类似的东西。