java有一个jstat 可以查看gc的情况等数据。可以看一下如何注入python进程获取gc每一代的次数。主要使用gdb

首先ps找一个python进程的pid。

ps aux| grep python

1264

 

然后执行

gdb -p 1264 -batch -eval-command='call PyGILState_Ensure()' -eval-command='call PyRun_SimpleString("exec(\"import gc\\nprint(gc.get_count())\")")' -eval-command='call PyGILState_Release($1)'

你会发现 1264启动日志输出一个元祖(492, 8, 0),分别代表每一代gc的次数。

同样也可以进行手动gc,或者查看线程数等操作。或者执行任意代码。

 

上一篇:
下一篇:

相关文章:

Categories: 博客记录

0 Responses so far.

Leave a Reply