gpt4 book ai didi

objective-c - 处理通过 NSObject 的 performSelectorOnMainThread :withObject:waitUntilDone: 调用的方法期间引发的异常

转载 作者:搜寻专家 更新时间:2023-10-30 19:40:56 25 4
gpt4 key购买 nike

如果通过 NSObject 的 performSelectorOnMainThread:withObject:waitUntilDone: 调用 myMethod: 中引发的异常会怎样?

特别是,我可以像这样在 performSelectorOnMainThread 的调用范围内捕获它们吗...

@try {
[self performSelectorOnMainThread:@selector(myMethod) withObject:nil waitUntilDone:YES];
} @catch(NSException *e) {
//deal with exception raised in myMethod here??
}

我意识到,如果 waitUntilDone 是 NO,这的语义很奇怪。

最佳答案

那样你是抓不到他们的。 Cocoa 可能会捕获异常并将其记录到控制台,但它不会在调用 -perform 的线程中重新引发它们。相反,您可以在 -myMethod:(或调用 -myMethod: 的包装器)中捕获它们,并将它们存储在其他线程可以读取它们的地方。

关于objective-c - 处理通过 NSObject 的 performSelectorOnMainThread :withObject:waitUntilDone: 调用的方法期间引发的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/155171/

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