gpt4 book ai didi

ios - NSData 图像在内存中的权重是否与打开的图像一样大?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:17:53 25 4
gpt4 key购买 nike

我正在从我的 iOS 应用程序向我的服务器执行上传功能。我现在正在设计执行此操作的最佳方法,并认为我的方法会遇到麻烦。

我有 20 多张图片,我想使用 AFNetworking 中的 AFmultiparFormData 在 1 个请求中发送,其中还有与该图片相关的文本信息。

现在...我知道如何创建包含大量信息的 NSDictionary 但从未在 NSData 中创建包含 20 张图像的 NSDictionary格式化或试图一次上传多张照片。

问题是我不知道 NSData 图像是否会占用与图像一样多的内存空间。因此,我当时只能做 2/3(如果它们是全屏图像,但它们不是,但它只是一个任意测量点)

根据我所说的内容和下面的 seudo 代码,我可以这样做还是会耗尽内存?否则我会一个接一个地做。

// for loop that does this 20 times
UIImage* image = [UIImage imageNamed:myExercise.exercisePictureThumb];
NSData * exercisePictureThumb = UIImagePNGRepresentation(image1);

// add to dictionary recursively

最佳答案

您不应将所有图像数据放入 NSDictionary,因为这可能会导致内存问题。

相反,创建文件 URL 的字典或数组,然后使用 AFNetworking 的 multipartFormRequestWithMethod:path:parameters:constructingBodyWithBlock:AFMultipartFormData protocol ,特别是 appendPartWithFileURL:name:fileName:mimeType:error:。这样一来,所有图像的图像数据就不会同时全部存储在内存中,而是从磁盘流式传输。巨大的性能提升。

关于ios - NSData 图像在内存中的权重是否与打开的图像一样大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16947764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com