瓦尔格林德挂着没有输出
Valgrind is hanging with no output
对于我正在尝试为我一直在处理的类之一编写代码的方法,我正在尝试从文件中读取双精度值,并使用这些数值在程序内动态设置一些数组。
我想检查一下,至少在我来的时候,我是否有内存泄漏。但是,启动valgrind
只是挂起,由于CPU负载很高,valgrind
似乎工作得相当繁重,但是即使我已经等待了一段时间,也不会产生输出。我已经翻阅了手册的页面,但找不到有用的东西。我编译了 valgrind-3.8.0 并立即使用它。我正在以我一直做的方式发射它
valgrind --leak-check=yes --log-file=valgrind_log ./binary_to_execute args_if_any
我也无法在谷歌搜索上找到对这个悬挂问题有用的 sth。关于这种悬挂行为的原因有什么想法吗?
编辑 1:这是应用程序的时间命令的定时输出
47740
real 0m1.299s
user 0m1.116s
sys 0m0.176s
编辑2:这是一个链接,与我遇到的问题或多或少相同,
有类似问题的消息
编辑3:我注意到很有趣,如果我尝试读取的文件大小很大,则会出现此问题,如果文件大小相对较小,则不会发生此挂起,这对我来说也很奇怪。
一个大文件表明要做更多的工作。所以瓦尔格林德需要更多的时间。瓦尔格林德真的很慢。
您可以使用世界上最好的调试器轻松调试它:printf()(只是半开玩笑。只需在主循环的每次迭代之前或之后打印一些内容。如果它没有出现,瓦尔格林德真的挂在某个地方。仔细放置 printf() 语句应该揭示它挂起的确切位置(如果它确实挂起而不是缓慢)。
- 也许你的程序主线程没有退出
- 等待瓦尔格林德出口
相关文章:
- 瓦尔格林德:数学函数"Conditional jump or move depends on uninitialised value(s)"
- 为什么瓦尔格林德在不释放恶意内存后没有报告任何问题?
- 瓦尔格林德的内存泄漏使用新的
- CPP 中的瓦尔格林德和记忆泄漏:"Conditional jump or move depends on uninitialised values"
- C++程序什么都不做,但瓦尔格林德显示内存分配
- 赫尔格林德和atomic_flag
- 删除堆后对瓦尔格林德错误感到困惑
- 为什么我会"Invalid read of size 8"?(瓦尔格林德)
- 瓦尔格林德报告在 =带有嵌套shared_ptrs的运算符上的读取错误
- 瓦尔格林德:注意到但未处理的国际奥克特尔;是否有必要处理以及如何找到?
- 瓦尔格林德错误 - 地址0x0不是堆叠的 malloc'd 或自由的
- 瓦尔格林德错误来自 boost::asio
- 瓦尔格林德可能丢失了,仍然可以到达并被瓦尔格林德检测到并被抑制
- 在瓦尔格林德的泄漏摘要中使用 std::ios::sync_with_stdio(fasle) 打印时获取"still reachable"
- 解释瓦尔格林德输出(可能的误报?
- 了解瓦尔格林德的输出
- 瓦尔格林德挂着没有输出
- 集成瓦尔格林德输出以找出数据竞赛的位置
- 瓦尔格林德挂起来分析多线程程序
- 解释瓦尔格林德的跟踪-malloc输出