在地块工具中跟踪子进程的命令
Command to track Child process in massif tool
我正在使用瓦尔格林德的地块工具。我需要跟踪子进程的堆内存。我找不到任何命令来获取子进程的堆内存。我的应用程序是恶魔服务器。
在memcheck工具中,我可以使用以下命令获取子进程详细信息
--track-children=yes
有没有办法使用地块跟踪子进程堆内存?
该工具为所有子进程创建日志文件,但仅为主进程生成地块文件。
valgrind
--tool=massif
--heap=yes
--time-stamp=yes
--time-unit=ms
--max-snapshots=1000
--detailed-freq=5
--log-file=../Valgrind_%p_massif.log
--massif-out-file=../masssif_%p_output
--xtree-memory=full
<binary_name>
我希望为所有子进程生成地块文件。 但它只创建一个与主进程无关的文件。
我检查了文件上次访问时间。这是主进程执行时间到等待请求的时间。
您缺少选项 --trace-children=yes
--trace-children 不是 memcheck 特定的选项,它是一个通用的 valgrind 选项,必须与任何 valgrind 工具一起使用,如果您希望子进程在 exec 之后也在 valgrind 下运行。
相关文章:
- 终止 QProcess 不会终止子进程
- 什么时候最好在子进程中使用 CPU 或 I/O 密集型代码 [ C++ ]
- 子进程更新共享 mmap 内存,但父进程没有更改
- 使用 waitpid 时等待子进程终止
- 使用重定向标准处理子进程中的 kbhit
- 由 JOB 中的进程启动的子进程是否可以将 JOB 属性设置为脱离作业?
- 是否可以将子进程的 stdout 重定向到父进程中的另一个文件?
- kill() 总是返回 0(成功),即使在子进程已经结束之后?
- 父进程和子进程之间的 POSIX 信号量
- 检测到由于操作系统内存不足而导致子进程终止
- 使用system()创建独立的子进程
- 从stdin读取时子进程挂起(fork/dup2竞争条件)
- 在 Bash 脚本中处理来自子进程的信号
- Qt C++ - 如何成功将数据传递给子进程?
- C++ 窗口本地系统模拟在子进程中失败
- 将类型化数组写入子进程 stdin 无法正常工作
- 将 nodejs 脚本作为子进程执行(而不是从其他脚本执行)
- 在地块工具中跟踪子进程的命令
- C++ LPCTSTR 如何将命令行参数传递给子进程
- C++中的子进程命令