【发布时间】:2009-11-06 09:50:20
【问题描述】:
我收到这个错误
bool _WebTryThreadLock(bool), 0x1b53d0:试图从主线程或web线程以外的线程获取web lock。这可能是从辅助线程调用 UIKit 的结果。现在崩溃了...
这是因为什么?
谢谢
【问题讨论】:
标签: objective-c nsthread
我收到这个错误
bool _WebTryThreadLock(bool), 0x1b53d0:试图从主线程或web线程以外的线程获取web lock。这可能是从辅助线程调用 UIKit 的结果。现在崩溃了...
这是因为什么?
谢谢
【问题讨论】:
标签: objective-c nsthread
根据您提供的有限信息,我假设您从线程创建了一个 UIView(或它的任何子类)。
尝试改用以下方法:
[self performSelectorOnMainThread:<#(SEL)aSelector#>
withObject:<#(id)arg#>
waitUntilDone:<#(BOOL)wait#>];
== 编辑 ==
如果那是您的 appDelegate 从线程中获取回调,请尝试在您的回调之外添加一个新方法:
- (void) setMyImage:(UIImage*)theImage {
...
myUIImageView.image = theImage;
...
}
并从 上面提到的线程:
- (void) callBackWithImage:(UIImage*)imageFromUrl {
[self performSelectorOnMainThread:@selector(setMyImage:)
withObject:imageFromUrl
waitUntilDone:NO];
}
【讨论】: