RFR: 8356255: Add Stable Field Updaters to allow efficient lazy field evaluations [v11]

Viktor Klang vklang at openjdk.org
Fri May 9 09:23:56 UTC 2025


On Fri, 9 May 2025 08:38:39 GMT, Per Minborg <pminborg at openjdk.org> wrote:

>> This sketch shows how "Stable Updaters" can be used to create stable computations of `@Stable` fields. Only one updater is needed per class, similar to `AtomicIntegerFieldUpdater`.
>
> Per Minborg has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 24 additional commits since the last revision:
> 
>  - Revert unintended change
>  - Revert unintended change
>  - Remove unused factories and add comment
>  - Merge branch 'master' into stable-updaters
>  - Add composition of functions and MHs
>  - Revert changes in stable classes
>  - Add lazy CallSite methods
>  - Reformat
>  - Add convenience methods and documentations
>  - Add low level variants
>  - ... and 14 more: https://git.openjdk.org/jdk/compare/a3634a30...9a58db6a

src/java.base/share/classes/jdk/internal/lang/stable/StableFieldUpdater.java line 697:

> 695:                 return f;
> 696:             }
> 697:         }

Is there a specific reason not to use `Class::getDeclaredField(name)`?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25040#discussion_r2081288110


More information about the net-dev mailing list