タグ

ブックマーク / blog.kengo-toda.jp (2)

  • GitHub Actions 最近のやらかし一覧 - Kengo's blog

    FOSS開発で細かいやらかしを積み上げてきたのでまとめる。 テストの失敗原因レポートをartifactとしてアップロードしそこねる actions/upload-artifactを使ってテストレポートをartifactとしてアップロードする際、以下の書き方だと失敗する。 # bad - run: | ./gradlew test --no-daemon --stacktrace - uses: actions/upload-artifact@v2 with: name: reports path: build/reports これはテストが失敗した時点で後続のstepsが実行されなくなるため。明示的に失敗時でもアップロードされるように指示する必要がある。 # bad - run: | ./gradlew test --no-daemon --stacktrace - uses: actio

    GitHub Actions 最近のやらかし一覧 - Kengo's blog
  • newするとJVM内で何が起こるのかという話(後編)

    前編ではnewしたときのバイトコードについて追いましたので、後編ではバイトコード実行による現象=メモリの使い方やデータ構造について追っていきたいと思います。 なお私はSunやIBMのJVMしか扱ったことがないので、他の実装には当てはまらない内容が含まれるかもしれません。ご了承ください。 データはどこに作られるのか 当然メモリに作られます。もう少し厳密に言うと、JavaHeapに作られます。 そもそもJVMはデータをどのように扱うのか? JVM仕様書のRuntime Data Areasの節に、データを扱う6つの領域についての説明があります。 Program Counter Register JVM stacks Heap (Java Heap) Method Area Runtime Constant Pool Native Method Stacks これらの領域のうち、newされたオブ

    newするとJVM内で何が起こるのかという話(後編)
  • 1