想要捕捉程序中的 异常,有很多手段 。
比如: try crash、
NSAssert 断言
abort(); 退出程序。。
如果有些异常不太确定呢,或者说你仅仅需要提醒开发者,当异常出现时。并由开发者判断是否有问题,没有问题的话我要继续运行下去。。
恰好 上面那些异常捕捉手段都不能满足 可以 continue
如果能用代码来让程序停下,并打印日志和 调用堆栈[NSThread callStackSymbols] 是不是很cool。
#define Debugger() { raise( SIGINT ) ; } 或者 #define Debugger() { kill( getpid(), SIGINT ) ; }
效果:
跟在Xcode 中设置的断点一样。
参考:http://stackoverflow.com/questions/1149113/breaking-into-the-debugger-on-iphone