2013-04-10 40 views
0

我有一个插入系统API调用的Linux程序,特别是system("top"),所以我可以在程序中的各个点监视虚拟内存。我打印4次内存统计信息,并试图在这些调用之间打印其他数据。程序中的Linux系统(“top -p pid”)命令

但是,当我的程序完成时,看起来好像top命令正在刷新页面,所以我需要打印的其他数据正在被删除。我尝试添加一些迭代,如system("top -p pid -n 1),但我遇到了同样的问题。

有没有办法在Linux中调用top不刷新输出缓冲区?我不知道还有什么可以转身的。谢谢!

+0

不,不是。你可以**升级**来查看你的输出。我在Konsole上进行了测试,所有输出都在那里。 – gongzhitaao 2013-04-10 21:23:00

+0

不是我的情况,我不知道为什么。这只是来自'system(“top”)''的一堆数据。实际上,我甚至无法看到我启动程序的命令行。在Ubuntu上使用 – aquemini 2013-04-10 21:29:11

+0

?你有''回滚'启用? – gongzhitaao 2013-04-10 21:30:05

回答

1

您可以在/ proc中为自己打开相关文件并根据需要显示信息。