gpt4 book ai didi

iphone - (iphone) 如何从后台线程中创建的 imageRef 创建 UIImage?

转载 作者:行者123 更新时间:2023-12-03 19:14:23 25 4
gpt4 key购买 nike

UIImage* img = [UIImage imageWithCGImage: imageRef];
只能在主线程中完成..呸..

现在我所有要在后台线程中运行的图像创建函数都必须修改。
问题是我应该如何更改上面的行。

创建图像的通常步骤如下。

CGImageRef imageRef = CGBitmapContextCreateImage(context);
UIImage* img = [UIImage imageWithCGImage: imageRef];
CGImageRelease(imageRef);

CGContextRelease(context);

return img;

如果performSelector返回一个值,那就相当容易了。
但事实并非如此。由于这似乎是相当普遍的要求,我想知道是否有更好的做法这样做。

谢谢

最佳答案

UIImage* img = [UIImage imageWithCGImage: imageRef]; can be done in main-thread only.. bah..

仅当您想要定位 iOS 3.x 设备时。从 iOS 4 开始,UIImage 变得线程安全。如果您需要在 iOS 3 上运行,典型的行为是将 CGImageRef 传递回主线程,并在那里运行 imageWithCGImage 方法。

关于iphone - (iphone) 如何从后台线程中创建的 imageRef 创建 UIImage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5754113/

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