VirtualMachine所支持的操作 原

在JDK中com.sun.tools.attach.VirtualMachine提供了一些從外部進程attach到jvm上,並執行一些操作的功能。VirtualMachine的子類HotSpotVirtualMachine表示hotspot的虛擬機,下面的WindowsVirtualMachine是在windows平臺下的實現。它提供了以下功能:


1. public void loadAgentLibrary(String agentLibrary, String options)
    載入一個dll的agent


2. public void loadAgent(String agent, String options)
    載入java的agent,官方名字叫做 JPLIS agent ( Java Programming Language Instrumentation Services),並且調用agentmain方法


3. public InputStream remoteDataDump(Object … args)
    用於dumptreahd,jstack會用到


4. public InputStream dumpHeap(Object … args)
    用於堆的dump,jmap會用到


5. public InputStream heapHisto(Object … args)
    堆的柱狀圖的dump ,jmap會用到它


6. public InputStream setFlag(String name, String value)
    設置一些標記的值,一些簡單的可以,複雜的不能生效的,jinfo會用到它


7. public InputStream printFlag(String name)
    打印標記的值,jinfo需要的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章