是否有正确的方法来捕获块代码中的异常?
我收到了以下代码:
void(^callback(int) = ^(int respond){
[self DoSomethingWithRespond:respond]; //this throws an exception
};
-(void)DoSomethingWithRespond:(int)respond{
if(respond == 400){
NSException *exception = [NSException
exceptionWithName:@"Failed"
reason:logMessage
userInfo:nil];
@throw exception
}
}
从另一个线程调用回调方法。如果响应等于400,DoSomethingWithRespond
方法将抛出异常。
答案 0 :(得分:4)
@try {
<#statements#>
}
@catch (NSException *exception) {
<#handler#>
}
@finally {
<#statements#>
}