0

一条线

UIImage *tempImage = [UIImage imageNamed:@"gradient-image"];

在后台线程上的 NSOperation 内执行。代码在此处中断并显示以下消息:

[UIImageAsset retain]: message sent to deallocated instance

我有图像中的名称gradient-imageImages.xcassets老实说,我什至不知道还有什么其他信息是相关的。

这种情况很少发生,我无法始终如一地重现它。我用谷歌搜索了一下,但没有太多结果。所以,我决定在这里提出一个关于 SO 的问题。

4

1 回答 1

1

直接来自Apple的文档UIImage imageNamed:

你不能假设这个方法是线程安全的。

UIImage加载对象时必须在主线程上。使用它们时您可以在任何线程上,但加载它们需要主线程。

于 2015-02-16T15:02:44.053 回答