IOS 现成的函数 NSSetUncaughtExceptionHandler 用来做异常处理,但功能非常有限,
引起崩溃的大多数原因如:内存访问错误,重复释放等错误 , 这种错误它抛出的是Signal,所以必须要做Signal处理。
方式一:
backtrace
看附件代码:
http://download.csdn.net/detail/bravegogo/9427504
方式二:
[NSThread callStackReturnAddresses]; 与 [NSThread callStackSymbols];
-(IBAction)testbuttin:(id)sender{
self.thread = [[NSThread alloc]initWithTarget:self selector:@selector(downloadImage:) object:nil];
[self.thread start];
}
-(void)downloadImage:(NSString *) url{
sleep(0.4);
NSLog(@"sleep---------");
NSArray * t1 = [NSThread callStackReturnAddresses];
NSArray * t2 = [NSThread callStackSymbols];
NSLog(@"sleep--------- 2");
}