标签: debugging

如何转到GDB的上一行?

是否有可能在gdb中转到当前执行行之前的一行.例如:


void my_fun( somePtrType** arr,int start,int end)
{
 // arr is an array of pointers to somePtrType
  //line a
 ... some assignments
 swap(&arr[ind1] , &arr[ind2] ) ;
 //line b (current line )
}
Run Code Online (Sandbox Code Playgroud)

我现在在b行,可以检查arr那里的值,但我想回到第一行并检查arr那时的内容.

我认为这可能是不可能的,因为调试器可以以慢动作运行代码,但不能使其向后执行.
更多见解..

debugging gdb

65
推荐指数
5
解决办法
6万
查看次数

jQuery:print_r()显示等效?

可能重复:
JavaScript数据格式化/漂亮的打印机

我对在FireBug中查看未格式化的json blob感到有些厌倦.

有没有人知道jQuery的PHP的print_r()相当于?

会递归地从对象或数组中生成显示字符串的东西,我可以在页面上显示以便快速调试吗?

谢谢!

php debugging jquery

64
推荐指数
7
解决办法
14万
查看次数

以编程方式停止Firebug中的JavaScript执行

我目前正在使用Firebug调试复杂的JavaScript代码.我正在寻找一种方法来停止JavaScript执行,就好像它是一个断断点编程.

例:

instructions ...
degugger.breakpoint(); // the execution stops here as if a breakpoint was
                       // manually set
other instructions ...
Run Code Online (Sandbox Code Playgroud)

javascript debugging firebug breakpoints

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

如何在Visual C#2010 Express中切换调试和发布?

如何在Visual C#2010 Express中的调试和发布之间切换?

我查看了项目属性,但似乎缺失了.我错过了什么?

.net c# debugging release visual-studio-express

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

如何查看HttpWebRequest类发送的原始HTTP请求?

我知道你们都会回答"使用像Fiddler这样的调试代理服务器",但事情并非那么简单.

这是我的情况:我有一些代码在服务器上运行,在ASP.NET页面代码隐藏(aspx.cs)中,其中(除其他外)建立与另一个服务器的连接,抓取一些东西,然后格式化它并将其返回给浏览器.

问题是其他服务器做错了,所以我希望能够将调试标志传递到页面中(通过查询字符串,例如?debug = true),这样它就会打印出完全原始的 HTTP请求它发送到其他服务器所以我可以看到什么是错的.这段代码在几个地方运行,所以我希望能够在dev,staging或production上传递这个标志,只看到请求,而不必弄清楚生产服务器是否可以与某处存在的代理服务器通信等

你会认为这样做很容易,对吧?所以我觉得我疯了或者别的什么,但我查看了HttpWebRequest及其父类WebRequest的参考资料 - 什么都没有.没有办法.你会认为微软会想到这一点.最接近的是你可以访问"Headers"集合,但是当我尝试它时,它省略了一些非常重要的标题,如"内容长度" - 所以它必须"撒谎"给我(我知道它在撒谎,因为我知道因为远程服务器返回200状态 - 请求成功,它只返回错误/不同/错误的数据)

这是ask-for代码示例:

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://www.whatever.com");
req.Method = ... whatever ...;
... other setup for the request ...
/* At this point we are about to send the request.
   What does the raw HTTP request look like? */
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Run Code Online (Sandbox Code Playgroud)

c# asp.net debugging proxy httpwebrequest

64
推荐指数
4
解决办法
7万
查看次数

如果禁用右键单击,如何检查chrome中的元素?

我想调试一个信息框,显示当我将鼠标悬停在谷歌地图标记上时.但谷歌地图禁用右键单击地图画布上的任何位置,因此我无法检查该元素以进行调试/查看.

我试图通过元素选项卡中的href内容搜索元素,但它没有显示在搜索上.

尽管没有右键点击,有没有办法检查元素?

debugging google-chrome javascript-debugger google-chrome-devtools

64
推荐指数
4
解决办法
11万
查看次数

如何使用echo o print在NDK-build Android.mk文件中打印var来调试编译?

我正在尝试使用ndk-build编译库时打印一些额外的信息.

例如:

LOCAL_PATH := $(call my-dir)
all:;echo $(LOCAL_PATH)
echo: $(LOCAL_PATH)
print:echo "i'm not working"
Run Code Online (Sandbox Code Playgroud)

当我做ndk-build时,只需编译所有Android.mk,但我没有得到控制台回声.我已经阅读了GNU make info(ndk-build只是一个很小的GNU make),有些帖子说echo必须使用$(VAR)才能工作,但它不适用于我的情况.

有些想法?

debugging makefile android-ndk

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

Android设备未连接USB进行调试(Android studio)

我试图使用真实设备而不是在模拟器上调试我的应用程序.当我尝试连接时,它给了我以下信息:

找不到USB设备

我试图拔掉它并重新插上它,但它没有用.我还在我的设备中启用了USB调试未知来源选项.

任何帮助表示赞赏!

谢谢!

debugging android adb android-studio

64
推荐指数
6
解决办法
24万
查看次数

生产代码中的System.Diagnostics.Debug.WriteLine

我可能已经知道了这一点,但我不确定,我也没有记录.

我在开发过程中经常使用System.Diagnostics.Debug.WriteLine来跟踪变量或异常的变化,因为我正在调试代码.这意味着只有在开发过程中才能更容易地开发和理解发生的事情.我通常要么注释掉代码,要么在我去制作时将其删除.

我想知道如果我忘记评论代码会发生什么.比如说,在开发周期中,我正在跟踪可能使用Debug.Write Line将连接sting到输出窗口的错误信息.这显然可以在开发时使用,但我想知道当我上线时,如果这里存在风险.有人可以将调试器附加到我的实时可执行文件并捕获此输出吗?或者它只是在Visual Studio中产生输出?

那么当我们从调试切换到发布时呢?如果我们编译发布版本,编译器是否会忽略此代码?

.net debugging system.diagnostics

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

线程转储分析工具/方法

当Java应用程序挂起时,您甚至不知道导致这种情况的用例并想要调查,我理解线程转储可能很有用.

但是,我们如何从线程转储中轻松地获取有用的数据以找出问题所在?我一直在使用的服务器应用程序产生很长的线程转储,因为它是一个EJB体系结构,并且线程转储包含许多容器线程,我不确定我应该关注它们(即没有运行我的应用程序代码的线程) ,但JBoss的代码).

昨天我尝试了Thread Dump Analyzer工具.该工具肯定比在文本编辑器中查看原始线程转储更好,因为您可以过滤掉您不感兴趣的线程,查看线程列表,单击线程以查看其详细信息,比较线程转储以查找长时间运行的线程等.见下面的截图:

线程转储分析器

但仍有太多数据需要分析 - 近300个线程.我不知道有什么标准可以用来过滤掉所有我不感兴趣的JBoss线程.我不确定我是否应该查看当前处于"可运行"状态的线程,或者"等待条件"和"在Object.wait"中的线程也很重要.

您通常会遵循的方法和一般使用的工具是什么?

java debugging deadlock thread-dump

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