jvmti

    1熱度

    2回答

    在成功實現我的第一個JVMTI代理並且使用g ++編譯器完成構建之後,我想要將構建過程集成到我的Qt項目中。 但是我面臨着一些構建過程的配置問題: 我將與G ++編譯器運行參數如下: g++ -fPIC -shared agent.cpp -o libagent.so -I /usr/lib/jvm/java-6-openjdk/include -I /usr/lib/jvm/java-6-ope

    5熱度

    2回答

    我創建了一個簡單的Java應用程序,它有一個JFrame和幾個JButton。當我嘗試使用JVMTI檢查Java應用程序時,發現雖然我沒有創建任何明確的線程,但它們中的很多都產生了。 我能找到以下主題: DestroyJavaVM AWT-EventQueue的 - 0 AWT關斷 AWT-XAWT-守護線程 的Java2D Disposer-守護線程 線程0守護線程[由JVMTI代理創建] 信號

    1熱度

    2回答

    我有以下的Java代碼 public class Test { public void sayHello(String msg) { System.out.println(msg); } } new Test().sayHello("Bonjour"); 我有一個JVMTI代理連接到Java,我趕上函數調用。我想這是傳遞給我的方法(例如,「卓悅」) sta

    7熱度

    2回答

    是否可以使用JNI API在JNI方法內創建JVM?我試過使用JNI函數「JNI_CreateJavaVM()」來做到這一點,但它不工作(函數保持返回小於零的值)。 這裏是我使用的基本代碼(C++): JNIEnv *env; JavaVM *jvm; jint res; #ifdef JNI_VERSION_1_2 JavaVMInitArgs vm_args; JavaVMOpti

    8熱度

    2回答

    此問題僅限於HotSpot generations。有沒有什麼方法可以通過編程找出某個特定實例在哪一代存在。數據如: 年輕一代還是老一代? 如果年輕,哪個倖存者空間? Inside TLAB?哪個線程? (當然,BTrace,JVMTI) 任何技術的工作原理,只要我可以做這樣的事情: Object x = new Object(); HotSpotGenerationInfo info = Ho

    0熱度

    6回答

    我想查找或開發可作爲守護程序運行的應用程序,當在主機上運行的Java應用程序出現任何異常或錯誤時,通過電子郵件或短信通知管理員。我知道JVMTI可以實現我的部分目標,但它會影響受監控應用程序的性能(我不知道它會有多少,如果它很輕微,它是可以接受的),除此之外,開發它似乎是一個麻煩的工作一個JVMTI代理,我不確定如果多個應用程序同時使用同一個代理運行會發生什麼情況。有更好的解決方案嗎?提前致謝。

    1熱度

    2回答

    我正在使用JNI來分析一些程序。我只是想知道,在獲得jclass引用後,如何找到底層類的大小? 例如: class cls = env-> FindClass(「Lee/Boehm/Test」); 從這裏我如何評估熱點堆內的類Lee.Boehm.Test的大小? 謝謝 貝姆

    2熱度

    2回答

    我想在Mac OS X上編寫JVM TI示例代理。我安裝了Java 5。我想知道哪些動態庫應該鏈接我的樣本代理代碼?

    2熱度

    4回答

    現在有一些分析器承諾分析程序執行的併發行爲,以便了解線程執行情況。 我收集功能這會爲Java剖析有用集中剖析只有併發: 到目前爲止,我已經收集了什麼: 建設的等待換圖來發現潛在的死鎖訪問資源的 時間測量(數據結構等) 顯示每一個線程(活着,中斷,死) 你有什麼想法哪個線程調用其訪問共享ressources線程(等待,阻塞等)的狀態?就我個人而言,我打算在處理Java中的併發時發現一些不好的編程習慣

    5熱度

    1回答

    我正在編寫JVMTI代碼來剖析Java程序,這些程序通常需要使用函數AsyncGetCallTrace以固定時間間隔從隨機線程獲取堆棧跟蹤。因此,我可以獲得CallTrace結構,每個結構都包含一個CallFrame結構數組,其中包含有關堆棧跟蹤中各個幀的數據。具體來說,這些數據由jmethodID method_id(框架所在的java方法的ID)和jint lineno(.class文件中方法