嗨,我已经看到了一些使用 fb 命令在 gdb 中添加断点的示例。我尝试过使用以下方法,但它不起作用......
fb -[NSTimer release]
我试过了,但它说。
Function "-[NSTimer release]" not defined.
正如您可能告诉我的那样,我希望调试器在任何 NSTimer 对象上调用 release 时停止。
如何在 [NSTimer release] 上创建我想要的断点?
谢谢!
嗨,我已经看到了一些使用 fb 命令在 gdb 中添加断点的示例。我尝试过使用以下方法,但它不起作用......
fb -[NSTimer release]
我试过了,但它说。
Function "-[NSTimer release]" not defined.
正如您可能告诉我的那样,我希望调试器在任何 NSTimer 对象上调用 release 时停止。
如何在 [NSTimer release] 上创建我想要的断点?
谢谢!
很可能,NSTimer
实际上并没有实现-release
,选择从超类继承所述方法。
现在,一种解决方案是添加如下内容:
@interface NSTimer(FooBar)
@end
@implementation NSTimer(FooBar)
-(void) release {
[super release];
}
@end
到你的项目某处。你可以设置一个断点。
不过,我不会打扰。相反,您可以使用分配工具来查看针对特定对象的每个保留/释放事件,这通常比仅发布有用得多(特别是考虑到应用程序中可能有数十个 NSTimer 对象进出)。