问题标签 [stack-trace]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 堆栈跟踪中行尾的数字是什么
堆栈跟踪中行尾“+”后面的数字代表什么?
他们是 +c +29 +33 +24 +39 +34
java - Java StackTrace 编辑器或 GUI
我的 java 应用程序正在将堆栈跟踪转储到日志文件。但是,解决方案中心想要一种“更简单”的方式来理解生成的堆栈跟踪。
除了用 Java 训练他们之外,是否有堆栈跟踪编辑器或 gui 可以让他们的生活更轻松?
提前非常感谢!
java - 检测谁创建了线程(使用 Eclipse)
如何找出谁在 Java 中创建了线程?
想象一下:您在一个复杂的插件环境中使用了大约 30个第三方JAR。你启动它,运行大量代码,进行一些计算,最后调用shutdown()。
这个生命周期通常工作得很好,除了在每次运行时一些(非守护进程)线程仍然悬空。如果每次关机都是最后一次关机,这不会有问题,在这种情况下我可以简单地运行 System.exit() 。但是,这个循环可能会运行多次,并且每次通过都会产生更多的垃圾。
所以我该怎么做?我在 Eclipse 的调试视图中看到了线程。我看到了他们的堆栈跟踪,但他们不包含任何关于其来源的提示。没有创建者的堆栈跟踪,没有可区分的类名,什么都没有。
有谁知道如何解决这个问题?
iphone - 有人可以帮我了解一下 iPhone 应用程序中的这个堆栈跟踪吗?
目前我的程序中有一个非常奇怪的错误。有时会发生,有时不会。但这里是正在发生的事情的摘要:
程序启动时:
- 保存的数据(只是一个由 13 个元素组成的简短 plist)如果存在则加载。
- 一个包含 1014 个字符串的巨大 plist 被加载到 NSMutableDictionary 中。
- 另一个包含 78 个字符串的 plist 被加载到 NSArray 中。
- 播放 .mp4 电影。
错误发生在 OpenGL ES View 正在被删除并且用户即将查看 NSMutableDictionary 中 1014 个字符串中的一个字符串的部分。
模拟器中永远不会出现此错误。它只发生在 iPhone 上,有时运行良好,但有时会崩溃。
但是,在阅读了堆栈跟踪之后,我在其中看到了 CFDictionaryApplyFunction,所以我认为这可能是可能的原因之一。是不是因为在模拟器上,它读取的东西太快了,以至于 plist 中的整个字典都会立即加载,而在设备上,它的读取速度较慢?老实说,我不知道字典是如何工作的。它是瞬间读取所有 1014 个字符串,还是使用其他一些线程缓慢读取?请指教。谢谢你。
python - 当肯定有调用堆栈时,为什么 traceback.extract_stack() 会返回 [] ?
我有一堂课叫
在它的__init__()
,但每当我这样做时,价值traceback.extract_stack()
是[]
。
出现这种情况的原因有哪些?是否有另一种更可靠的追溯方式?
我认为问题在于代码在 Pylons 中运行。这是控制器操作的一些代码:
它生成的网页只是
所以,我认为它与对象的构造函数或类似的东西没有任何关系。它可能与某些类型的线程和回溯模块或类似的东西之间的不兼容有关吗?
c++ - 在 OS/X (10.5.7) 中生成 C++ 回溯
我一直在使用 backtrace 和 backtrace_symbols 来生成程序堆栈跟踪,以用于日志记录/诊断。它似乎大致工作,但是,我得到了一点修饰,并且没有与每个函数调用相关联的随附文件/行号(正如我在 gdb bt 调用或其他东西中所期望的那样)。这是一个例子:
1 leonardo 0x00006989 _ZN9ExceptionC2E13ExceptionType + 111
2 leonardo 0x00006a20 _ZN9ExceptionC1E13ExceptionType + 24
3 leonardo 0x0000ab64 _ZN5Rules11ApplyActionER16ApplicableActionR9GameState + 1060
4 leonardo 0x0000ed15 _ZN9Simulator8SimulateEv + 2179
5 leonardo 0x0000eec9 _ZN9Simulator8SimulateEi + 37
6 leonardo 0x00009729 main + 45
7 leonardo 0x000025c6 start + 54
任何我遗漏的东西,做一些愚蠢的事情,或者这就是我在 OS/X 上的回溯中所能期望的?
其他一些花絮:
rdynamic
我正在使用的 g++ 版本(4.0.1)的链接选项。-g/-g3
没有任何区别。
abi::__cxa__demangle
似乎什么也没做
java - 如何在移动设备中获取堆栈跟踪?
我在诺基亚 S40 中收到 NullPointerException。
我想知道是什么导致了这个异常。
设备显示:
NullPointerException java/lang/NullPointerException
此错误仅发生在设备中,在模拟器中运行应用程序工作正常。
我使用microlog来调试我的应用程序。但是如果启用了日志,应用程序可以正常工作。
当我得到这个 NullPointerException 时,有没有办法获取堆栈跟踪?我不需要像行号这样的所有细节,只是哪个方法导致了这个异常。
更新:我在另一台诺基亚 S40 上安装了相同的应用程序,但没有出现相同的错误。
- 诺基亚 2660 - 错误
- 诺基亚 6131 - 没有错误
更新 2:不知何故,我找到了导致 NullPointerException 的原因。
在某些情况下,会启动一个线程并在导致 NPE 的 helper.doStuff() 之前调用 OuterClass.dispose()。我认为当我启用日志时,它会使线程变慢,并且在我期望它被调用时调用了 helper.doStuff()。
python - 捕获异常时,如何获取类型、文件和行号?
捕获将打印如下的异常:
我想将其格式化为:
java - 获取完整的字符串堆栈跟踪,包括内部异常
Java 的 e.printStackTrace() 不会打印内部异常堆栈跟踪的所有详细信息。
有没有现成的方法可以以字符串形式生成完整的堆栈跟踪?(除了自己格式化)
编辑
我刚刚发现 printStackTrace() 做了什么 - 显然它过滤掉的堆栈帧正是内部异常和外部异常所共有的那些。所以实际上它是我想要的,而不是“完整的”堆栈跟踪。