标签: debugging

如果你无法解决错误,你会怎么做?

你的代码中有没有错误,你无法解决?我希望我不是那里唯一一个有这种经历的人......

存在一些类别的错误,很难追查:

  • 与时序相关的错误(例如,在进程间通信期间发生)
  • 与内存相关的错误(大多数人都知道适当的例子,我猜!!!)
  • 与事件相关的错误(难以调试,因为您遇到的每个断点都会使您的IDE成为鼠标释放/焦点事件的目标......)
  • 依赖于操作系统的错误
  • 硬件相关的错误(发生在发布机器上,但不发生在开发人员机器上)
  • ...

说实话,我不时自己修复这样的错误......经过几个小时(有时甚至是几天)的调试后,我觉得非常士气低落.

在这种情况下你做了什么(除了向别人寻求帮助之外并不总是可行的)?

你呢

  • 使用铅笔和纸而不是调试器
  • 面对另一件事,稍后再回到这个bug
  • ...

请告诉我!

debugging

33
推荐指数
6
解决办法
7773
查看次数

通过添加'print'语句进行调试的正确名称是什么

有许多方法可以进行调试,使用调试器就是其中之一,但对于谦虚,懒惰的程序员而言,简单的方法就是在代码中添加一堆打印语句.

 def foo(x):
     print 'Hey wow, we got to foo!', x

     ...

     print 'foo is returning:', bar
     return bar
Run Code Online (Sandbox Code Playgroud)

这种调试方式是否有正确的名称?

debugging printf-debugging

33
推荐指数
9
解决办法
1万
查看次数

使用方法入口调试时,为什么调试程序会减慢这么多?

我正在使用jdi接口来创建调试器,当我使用MethodEntryRequests启用方法条目跟踪时,调试程序的速度减慢了几十倍.我为主线程设置了过滤器,并将策略暂停到SUSPEND_EVENT_THREAD.Classfilter是有限的,如果我打印任何收到的事件,它不会显示超过几十个,所以它不应该收到太多.我在本地调试并且使用调试的java程序跟随它的命令行:

-Xdebug -Xrunjdwp:transport=dt_socket,suspend=y,server=y,address=1337

java debugging jdi

33
推荐指数
3
解决办法
5420
查看次数

在调试时如何让Visual Studio保持在一个线程上?

当我在Visual Studio中进行调试时,出于某种原因调试某个线程时,Visual Studio将跳转到不同的线程.

如何更改行为以使其位于同一个线程上?

debugging multithreading visual-studio visual-studio-debugging

33
推荐指数
4
解决办法
6791
查看次数

Perl内存使用情况分析和泄漏检测?

我在Perl上编写了一个在Linux上运行的持久网络服务.

不幸的是,随着它的运行,它的Resident Stack Size(RSS)只是在缓慢但肯定地增长,增长和增长.

尽管我努力消除所有不需要的哈希键并删除对象的所有引用,否则会导致引用计数保留在原位并阻碍垃圾收集.

是否有任何好的工具可以在Perl程序中分析与各种本机数据原语,祝福散列引用对象等相关的内存使用情况?你用什么来追踪内存泄漏?

我不习惯在Perl调试器或任何各种交互式分析器中花费时间,因此我们将感激温暖,温和,非深奥的反应.:-)

debugging perl profiler memory-leaks memory-management

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

有没有办法打破Visual Studio中执行的下一行代码?

我正在尝试追踪当我点击aspx页面上的特定元素时发生的错误...

在过去,我必须追踪处理该特定事件的类,并在我认为应该被击中的线上设置一个断点.在我最终找到正确的类之前,通常需要多次尝试....特别是如果类是一个隐藏在某处的用户控件...

因此,我想知道是否有任何方法可以让Visual Studio在单击aspx页面上的元素(例如按钮)后执行的下一行代码中断.我知道有一种方法可以打破任何抛出的异常,所以我想也许有类似的东西可以帮助我.

如果这种功能不可能,也许有人可以建议一种更好的方法让我快速找到我想要调试的类......

debugging breakpoints visual-studio-2008

33
推荐指数
1
解决办法
1万
查看次数

Visual Studio - 可以是从代码调用的断点吗?

我有一个基于UnitTest ++的单元测试项目.我通常在代码的最后一行放置一个断点,以便我可以在其中一个测试失败时检查控制台:

  n = UnitTest::RunAllTests();
  if ( n != 0 )
  {
  // place breakpoint here    
    return n;
  }
  return n;
Run Code Online (Sandbox Code Playgroud)

但每次我从SVN重新签出代码时,我都必须重新插入它.是否可以通过编译器对断点进行某种程度的放置?:

      n = UnitTest::RunAllTests();
      if ( n != 0 )
      {
      // place breakpoint here    
#ifdef __MSVC__
        @!!!$$$??___BREAKPOINT;
#endif
        return n;
      }
      return n;
Run Code Online (Sandbox Code Playgroud)

c++ debugging breakpoints visual-studio visual-c++

33
推荐指数
3
解决办法
2万
查看次数

在Eclipse中调试我的Java代码时,我得到"Source not found"

我正在尝试在Eclipse中调试我的Java应用程序,但是当我遇到断点时,我只看到以下内容而不是我的源代码:

来源未找到消息

如果我在调试窗口中更改堆栈帧,那么我可以看到选项卡中的函数名称更改 - 这绝对是我的代码,行号是正确的,我使用的是最新版本,但我仍然无法将Eclipse转换为显示源(尽管它在另一个选项卡中打开!)

我是Eclipse的新手,因此我很难找到自己的方式,但到目前为止我遇到的所有事情对我来说都很好.

可能导致这种情况发生的原因以及如何解决?

java eclipse debugging

33
推荐指数
3
解决办法
7万
查看次数

如何在python pdb中列出对象的所有属性?

我尝试在Python pdb中列出对象的所有属性.

假设我要列出所有属性和所有方法sys.stderr.

我怎样才能做到这一点?

python debugging pdb

33
推荐指数
3
解决办法
3万
查看次数

iOS6 - 删除了iPad的控制台日志 - 如何在Windows上使用Web检查器?

所以iOS6已经出局了,可怕.现在,似乎Apple已经删除了以前在Safari中存在的"开发者控制台".很好,我听到很多人说 - 它很有限.

但是,它适用设备 - 现在显然你必须将设备连接到Mac才能获得网络检查员?

这是用控制台调试的唯一方法吗?有没有办法调试Windows,Safari?请注意,我并不仅仅意味着只更改用户代理,您可以在Safari Windows上执行 - 不注册触摸事件 - 只需单击即可.

debugging ipad ios6

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