在Delphi 7上,我收到了一条警告消息:“在堆栈位置设置数据断点可能会导致程序或系统变得不稳定。还是设置断点?”对此消息的简短描述没有解释程序(或系统)可能变得不稳定的原因。它只说它可能会发生。
我想问你一个具体的解释,为什么/什么时候程序(或系统)将是不稳定的。
发布于 2016-07-12 20:15:47
数据断点是由对指定位置的内存写入操作触发的。检测这些操作,无论是使用硬件断点还是其他技术,据我所知,不会导致程序,更不用说整个系统,变得不稳定。
但是,在堆栈区域中创建数据断点会出现问题。这些问题可能导致调试器行为,这些行为几乎肯定是不受欢迎的,并且可能被认为是“不稳定”的,因为断点的数量和频率使得调试器无法使用。
但这是使“系统”或“程序”不稳定的唯一程度。
错误信息最有可能使用简略的语言,可以说是误导性的,试图用适合简短、简洁的错误信息的术语来表达这一点,因为实际的、准确的解释既难以解释,也可能不太可能为许多开发人员所理解。
在堆栈中放置一个数据断点也有可能在Win32 32之前引起更广泛的系统问题(我不确定,但我可以想象它是有可能的--程序失败在Win16下使整个系统崩溃肯定更容易);也就是说,这个消息是Delphi1中的挂起,根本没有更新以反映进程在Win32下享有的更大的保护。
https://stackoverflow.com/questions/38328470
复制相似问题