C Java JVMTI

[Java] JVMTIを使ってJVMエージェントを作ってみる その4

エージェント側のスレッド起動 JVMTIを使ってJVMエージェントを作ってみる その1 JVMTIを使ってJVMエージェントを作ってみる その2 JVMTIを使ってJVMエージェントを作ってみる その3 とは少し趣向を変えて、エージェント側のスレッドを起動してみよう。 ...

C Java JVMTI

[Java] JVMTIを使ってJVMエージェントを作ってみる その3

ブレークポイントを設定する JVMTIを使ってJVMエージェントを作ってみる その1 、 JVMTIを使ってJVMエージェントを作ってみる その2 に引き続き、今度はmainメソッドの先頭にブレークポイントを設定して、その時点のスレッドを表示してみよう。 ポイントはClas...

C Java JVMTI

[Java] JVMTIを使ってJVMエージェントを作ってみる その2

バイトコード表示 JVMTIを使ってJVMエージェントを作ってみる その1 ではClassPrepareイベントハンドラを登録するところまでだったけど、今回はmainメソッドのバイトコードを表示するところまでやってみよう。 バイトコード表示にはバイトコードを取得する許可を与...

C Java JVMTI

[Java] JVMTIを使ってJVMエージェントを作ってみる その1

JVMTI Javaのコードを書き換えることなく、実行中にスレッドやヒープの情報を取得するツールはいろいろと存在する。 これらのツールのようにJavaの実行環境情報を実行中に取得するにはどうしたらいいんだろう。 JNIでクラス検索するときのパッケージ名 ではJNIを使って...