Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 同步下载Firebase存储_Ios_Swift_Firebase_Synchronization_Firebase Storage - Fatal编程技术网

Ios 同步下载Firebase存储

Ios 同步下载Firebase存储,ios,swift,firebase,synchronization,firebase-storage,Ios,Swift,Firebase,Synchronization,Firebase Storage,我正在从Firebase存储下载一个图像,并将其显示在表视图中。我一直在使用这个: referenceOfImage.data(withMaxSize: 100 * 1024 * 1024) { data, error in if let error = error { print(error) } else { guard let data = data else { print("no data")

我正在从Firebase存储下载一个图像,并将其显示在表视图中。我一直在使用这个:

referenceOfImage.data(withMaxSize: 100 * 1024 * 1024) { data, error in
    if let error = error {
        print(error)
    } else {
        guard let data = data else {
            print("no data")
            return
        }
        guard let image = UIImage(data: data) else {
            print("no image")
            return
        }
        //use image

    }
}
然而,根据文件,这项任务

第一次异步下载对象或引用内存中的NSData对象


我目前正在使用一个循环来下载多个图像,如果我可以同步下载图像,效果会更好(否则循环将继续,任务将不完整)。如何同步下载图像?谢谢

你不能。这些方法是异步的,因为它们需要服务器调用,而使它们同步将阻塞主线程并导致非常差的用户体验和性能。您可以设置完成调用来执行一些递归,也许


将图像加载粘贴到一个函数中,该函数接收要获取的内容数组、当前索引以及完成时要调用的选择器。有一个终止条件(index==array.count),它在加载所有图像时调用您希望发生的选择器,否则在索引处获取图像,并在完成处理程序中,通过调用相同的方法增加索引并获取下一个图像

你不能。这些方法是异步的,因为它们需要服务器调用,而使它们同步将阻塞主线程并导致非常差的用户体验和性能。您可以设置完成调用来执行一些递归,也许


将图像加载粘贴到一个函数中,该函数接收要获取的内容数组、当前索引以及完成时要调用的选择器。有一个终止条件(index==array.count),它在加载所有图像时调用您希望发生的选择器,否则在索引处获取图像,并在完成处理程序中,通过调用相同的方法增加索引并获取下一个图像

我使用改型,每个服务器调用都是从IO线程进行的,所以对于UI线程来说,这可以同步完成。关键是要使用没有回调的直接编程风格是的,出于同样的原因,我正在寻找同步调用。Kotlin协程。我使用改型,每个服务器调用都是从IO线程进行的,所以对于UI线程来说,这可以同步完成而不会出现问题。关键是要使用没有回调的直接编程风格是的,出于同样的原因,我正在寻找同步调用。科特林合作项目。