当前位置:  开发笔记 > 编程语言 > 正文

如何将Ctrl-Break发送到正在运行的Linux进程?

如何解决《如何将Ctrl-Break发送到正在运行的Linux进程?》经验,为你挑选了2个好方法。

我正在调试Sun的JDK 1.4.2_18上运行的应用程序中的内存泄漏.看来这个版本支持命令行param -XX:+ HeapDumpOnCtrlBreak,它可能导致JVM在遇到控制中断时转储堆.如何将其发送到Linux机器上的后台进程?似乎杀死信号是应该工作的方式,但是我杀了-l没有报告任何显然是Ctrl-Break的东西,至少在我的Ubuntu盒子上.

更新:我测试了使用Sun JDK 1.4.2_18杀死-3(_14是第一个以这种方式转储堆),并且它有效.已创建堆转储文件,并且该进程仍在运行.



1> Tom Hawtin -..:

Ctrl- \是UNIX/Linux等效的Windows Ctrl-Break.维基百科还告诉我,你也可以在Linux虚拟控制台上使用Ctrl-4或SysRq(我想你需要一些奇怪的东西,普通终端模拟器才能传递那些按键的表示(通过ssh/telnet)).



2> bm212..:

kill -QUIT可能会这样做(它会生成一个由Windows上的ctrl-break生成的线程转储.虽然我没有尝试使用堆转储选项).

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有