是否可以从命令行触发Android堆转储?

核磁共振

我希望能够从命令行触发Android堆转储。有命令吗?

特别是,从命令行而不是通过Montior或DDMS GUI

也许像使用ddms或adb之类的东西,例如ddms -head-dumpor adb shell heapdumpAFAICT监视器和ddms始终以GUI模式启动,并且adb没有堆转储命令。

更新:我尝试过,它看起来很有希望,但是不起作用:

  1. adb jdwp
  2. adb forward tcp:8000 jdwp:1234 (用输出1代替1234)
  3. jmap -dump:format=b,file=heapdump.hprof localhost:8000

但是,即使堆摘要失败:

jmap -heap localhost:8000
Attaching to remote server localhost:8000, please wait...
Error attaching to remote server: java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is: 
        java.net.SocketTimeoutException: Read timed out
DamianLeszczyński-瓦什

在Android 3.0以下版本中,您可以使用所谓的

kill -10 <pid>更多

在Android 3.0中,添加了新的命令行工具:

adb shell am dumpheap <pid> <output-file-name>;更多

详细说明

要获取HPROF,您还需要使用hprof-conv更改其格式

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从命令行下载MySQL转储

如何从命令行查看内存使用情况(Java程序的线程转储)?

以编程方式从命令行分析HPROF内存转储文件

sqlite3:将模式从命令行转储到.sql文件中

是否可以从命令行运行rascal程序?

是否可以从命令行运行JavaScript文件?

是否可以从命令行调用groovy脚本方法?

是否可以从命令行永久更改CMD的颜色?

是否可以从命令行使用Android Studio的反编译器?

除了jmap之外,还有命令行方法来获取jvm堆转储吗?

蚂蚁脚本:让<exec>标签转储整个命令行

从核心转储获取崩溃程序的命令行调用

从命令行启动Android活动

打字稿:从命令行触发“ organizeImports”

从命令行触发ASP.Net MVC捆绑

多个TestNG组:是否可以从命令行以独占方式对它们进行“与”操作?

是否可以从命令行为SpecFlow测试“重新生成功能文件”?

是否可以从命令行运行 python 文件,但与之交互?(REPL)

是否可以从命令行在*当前*空间中的Finder中打开文件夹?

是否可以从命令行而不是gui使用跟踪32功能?

Linux可以从命令行告诉显示器是否已连接吗?

我可以从命令行引用POM属性吗?

可以从命令行检索jconsole数据吗?

可以从命令行“安装” Xcode .mobileprovision文件吗?

可以从命令行运行WinForms程序吗?

您可以从命令行调用“慢猎豹”吗?

如何检查是否从命令行停止了进程?

如何从命令行判断机器是否需要重启?

从命令行打印