#chiroito ’s blog

Java を中心とした趣味の技術について

2020-07-01から1ヶ月間の記事一覧

OpenJDK開発記:JDK-8249720: Generated bytecodes of EventWriter don't be output to the logを直してみた。

これは何? 今回、パッチを書いたのはJDK-8249720のGenerated bytecodes of EventWriter don't be output to the logです。 [JDK-8249720] Generated bytecodes of EventWriter don't be output to the log - Java Bug System VM起動引数に-Xlog:jfr+system+…

Java のメモリ上にあるバイトコードをクラスファイルとして出力

開発者は Java 言語でソースコードを書き、そのソースコードは Javac というコンパイラでバイトコードに変換されクラスファイルとなり、クラスファイルは Jar ファイルとしてまとめられ、 Java コマンドでアプリケーションとして実行します。 アプリケーショ…

JFR Under the hood : JFRイベントの書き込み -Java編-

結論 C/C++ 側で Java のjdk.jfr.internal.EventWriterが作成されます。このインスタンスにはThreadLocalに作られたJava用のバッファへのポインタを保持しています。イベントが書込まれるとEventWriterはそのイベントをこのバッファへ書込みます。この書き込…

JFR Under the hood : StartFlightRecordingのVM引数をJFRへ適用する処理

結論 VM起動引数として指定された-XX:StartFlightRecording=xxx=xxx,yyy=yyyという形式のパラメータは、VMを起動する途中で、JFRのパラメータを初期化するメソッド(JfrOptionSet::initialize)でjcmd の方法に変換されます。その後、VMはJFRのパラメータを設…

JFR Under the hood : ローカルで動くJFR Event Streamingのリアルタイム性

結論 ローカルに作られるリポジトリからイベントを読み込みます。イベントは非同期でこのファイルに書込まれます。そのため、本当の意味でのリアルタイムにはイベントは処理されないため気を付けましょう。 JFR Event Streamingとは Java 14 で追加された JF…