标签: debugging

Python对象检查器?

除了使用带有调试器的完全集成的IDE(如Eclipse)之外,还有什么小工具可以实现这个目的:

  • 在运行程序时,我希望能够在某处挂钩(类似于插入print语句)并使用对象检查器调用窗口(树视图)
  • 关闭窗口后,程序应该恢复

它不需要抛光,甚至不是绝对稳定的,它可以是像wx这样的小部件库的内省示例代码.平台独立会很好(不是PyObjC程序,或类似的东西在Windows上).

有任何想法吗 ?

编辑:是的,我知道pdb,但我正在寻找所有当前对象的图形树.

不过,这里有一个很好的介绍如何使用pdb(在这种情况下在Django中): pdb + Django

python debugging introspection

2
推荐指数
1
解决办法
2420
查看次数

PHP使用@转义错误报告

我正在重构一些工作代码,我遇到了一些以"@"符号为前缀的函数调用.据我了解,如果调用失败,这是为了逃避PHP错误报告.

这种类型的东西是好的做法吗?我理解开发环境中的基本原理,但是当网站被推向生产时,不应该正确处理所有错误而不是仅仅进行转义?

因此,使用此符号意味着开发人员必须在稍后阶段对代码进行排序,以删除所有错误报告转义.

我不确定是否删除这些符号,只是找到一种更好的方法来处理潜在的错误.

为清楚起见,使用它的函数是本机PHP fsockopen()函数.

php debugging error-handling refactoring

2
推荐指数
1
解决办法
1000
查看次数

什么是发现为什么在我的C++应用程序中创建线程以及它们的作用的最佳方法?

我正在审核在Windows上运行的C++应用程序,针对多线程调试DLL进行编译.它有很多可以产生线程的第三方依赖项.我需要跟踪每个线程为什么存在以及分配多少堆栈空间.

什么是追溯到线程创建开始的好方法,以便我可以看到它产生的位置?

更新:我应该指出我拥有Microsoft依赖项之外的整个应用程序的源代码.但是,很多线程都有独立存在于操作系统附带的库中的callstacks,如ntdll.dll和kernel32.dll.

c++ windows debugging multithreading

2
推荐指数
1
解决办法
235
查看次数

VS.NET的当前断点的原因不会被警告?

尝试调试控制器操作方法,当我附加到进程时,调试图标变为空心,并表示"当前断点不会被命中"

但是我response.write在那时做了一个,当页面渲染时它会输出测试文本.

那部分确实正在执行,为什么调试模式不起作用?

c# asp.net debugging vsto visual-studio

2
推荐指数
1
解决办法
1661
查看次数

在调试模式下运行Visual Studio控制台应用程序的CPU使用率不会超过50%

我有几个C#控制台应用程序,基本上解析内存中的大量数据(LINQ)并将结果输出到文本文件.

现在,忘记写入文本文件一分钟,因为这不是问题发生的地方.

当我在调试模式下运行应用程序时,我永远不会使用超过50%的CPU使用率.它将解析/按摩数十万条记录,但只能快速运行X并利用50%的CPU(在任务管理器中查看).

我真的想用100%的CPU来加快处理速度.

有人有任何见解吗?

我正在运行带有Service Pack 3的Windows XP Professional.我安装了带Service Pack 1的Visual Studio 2008 Professional.

谢谢!

编辑:

  • 我已手动将任务管理器中进程的关联设置为双CPU上的单个核心.
  • 有时我可以利用51%或52%的CPU来捕获它.

c# vb.net debugging visual-studio-2008 visual-studio

2
推荐指数
2
解决办法
2048
查看次数

如何调试'ESP的值没有保存在函数调用'错误?

在我的程序退出的极少数情况下,我得到"ESP的值没有在函数调用中保存"错误.该错误非常随机且难以重现.

如何调试此错误(VC++ 2008)?它是多么苛刻,因为它只在停机时发生?在发布模式下错误是否也可见?

c++ debugging stack

2
推荐指数
1
解决办法
2222
查看次数

在RELEASE中构建时找不到Msvcr90d.dll

奇怪的是,如果我在调试模式下构建我的程序,我没有错误,但如果我在发布模式下构建我的程序,我会收到一条错误消息,指出找不到Msvcr90d.dll.Msvcr90d.dll是一个调试库,我不知道为什么当我加载它时它会出现= =

c++ debugging release msvcr90d.dll

2
推荐指数
1
解决办法
1159
查看次数

您是否可以标记仅包含在Debug构建中的代码段?

对不起,极端的新手问题,但我无法在别处找到答案,并没有实际做过这样的事我自己(去图 - 我想,当你的公司使用的生产环境中进行测试出现这种情况).

如果Visual Studio提供了一些机制来指定某些代码段(例如,日志记录)应仅包含在Debug构建中,那将是很好的.这存在吗?我对C#和VB.NET以及VS 2005中的方法感兴趣,以防万一.

.net debugging visual-studio

2
推荐指数
1
解决办法
237
查看次数

在局部变量值上设置Visual Studio(条件)断点

我正在尝试调试一种方法,该方法除了其他方面之外,还将项添加到方法本地的列表中.

但是,每隔一段时间,列表大小就会被设置为零"中游".我想设置调试器在列表大小变为零时中断,但我不知道如何,并且会欣赏有关如何执行此操作的任何指针.

谢谢.

c++ debugging stl visual-studio

2
推荐指数
1
解决办法
8380
查看次数

如何在发布模式下自动注释行?

我需要在调试模式下将某些代码行"激活",并在发布模式下忽略.有没有办法做这样的事情:

#include <iostream>
using namespace std;

#ifdef _TEST_
#define _cerr cerr
#else
#define _cerr // cerr
#endif

int main() {
   _cerr << "TEST message" << endl;
}
Run Code Online (Sandbox Code Playgroud)

因此,当_TEST_未定义时,会对某些行进行注释或从代码中删除.我知道评论是在其余的之前处理的,所以这段代码是错误的.但是,如何在不明确使用#ifdefs的情况下获得我需要的行为?

c++ debugging release release-mode c-preprocessor

2
推荐指数
2
解决办法
443
查看次数