jvmti

    6

    3答えて

    より良いプロファイリングデータをサポートするために、私のJVMTIエージェントがいくつかのJVMフラグを有効にしたいと思います。 問題のエージェントはHonest-Profilerで、起動時にのみロードできます。 私はフラグを有効にしたいと思います: -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepointsが問題を1としてフラグがオンでない場合h

    1

    1答えて

    私はちょうどJVM TIを学び始める javaコマンドについて:Javaの-agentpath:../ tool.dllのJavaClass、私はdllでAgent_OnLoad()方法があることを知って、多分それはいくつかのイベントcallback methodを設定する。そして、私はJVMがjavaClassを実行しAgent_OnLoad()が最初に実行し、知っている.AND Agent_O

    1

    1答えて

    は私が期待どおりにfoo.oを生み出すだろう、 LDLIBS=$(shell root-config --libs) INCLUDE= -I/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/include \ -I/Library/Java/JavaVirtualMachines/jdk1.8.0_51

    1

    1答えて

    私は、JVMプロセスで定期的なスレッドダンプを取るシステムを構築しようとしています。私はスレッドダンプを取っている間にJVMに最小のオーバーヘッドを引き起こすつもりです。スレッドダンプを取る方法は複数あり、最終的にはカスタムJVMTIエージェントを構築するか、ThreadMXBeanを使用するかの2つの選択肢があります。誰かがどのアプローチでJVMのオーバーヘッドが最小限になるのか分析したのでしょ

    1

    1答えて

    JVMTIエージェントは、多くの場合、Javaヒープをトラバースし、各ライブオブジェクトを1回正確に訪問する必要があります。一つの技術は、によってFollowReferencesを呼び出して複数回指定されたオブジェクトを横断回避することである:例えば、タグ付きオブジェクトをフィルタリングSetTagを使用して訪問し、 各オブジェクトをタグ付け ヒープフィルタフラグにJVMTI_HEAP_FILTE

    5

    2答えて

    JVMTIエージェントで作業しています。メソッドの入力と終了で同じスレッドを識別したいと思います。私はスレッド名を得ることができますが、それは十分ではありません。 あなたは、このようなメソッドを持っている想像: public class Main { public static void myMethod() { System.out.println("doing somet

    1

    1答えて

    JVMTIインターフェイスを使用してC++で記述されたカスタムデバッガエージェントを実行しようとしています。私は、次のリンク Creating a Debugging and Profiling Agent with JVMTIを追っ 私はjava -Xbootclasspath/a:mtrace.jar -agentlib:mtrace JVMが、それは私に次のような出力を与えてブートアップされ

    0

    1答えて

    JVMTIインターフェイスのAPIを使用してJVM用のカスタムデバッガを作成していますが、メソッドが宣言されているクラス名を取得する必要がありますメソッドのメソッドID error = (*jvmti)->GetMethodName(jvmti,frames[i].method,&methodName,NULL,NULL);を使用して、私は、これはdeclaring_class_ptrでJCLAS

    1

    1答えて

    私はデバッガ、計測器、およびJVMTIの分野では新しいです。 だから私はそれらについてほとんど質問がありません。 JDI(Javaデバッガインタフェース)、JWDP、javaagent、およびネイティブエージェント(JVMTI)の違いは何ですか? 、java instrumentation APIはどこにあるのですか? 対象のJavaアプリケーションで例外を傍受するためにJDIを使用しています。

    1

    1答えて

    は私がJVMTI EventたmethodEntryとそのコールバック関数が tdMethodEntryで登録して、多くの多くのたmethodEntryイベントが存在する場合、私の質問は これらのイベントはキューを介して同じスレッドによって処理されることがありますか?いくつかのスレッドで処理することができますか?