Integrated: 8277863: Deprecate sun.misc.Unsafe methods that return offsets

Alan Bateman alanb at openjdk.java.net
Tue Dec 7 14:25:19 UTC 2021


On Fri, 3 Dec 2021 13:05:44 GMT, Alan Bateman <alanb at openjdk.org> wrote:

> Deprecate the sun.misc.Unsafe methods that return field offsets. These method are an impediment to possible future changes. Layout may not be fixed in the future, the VM should be allowed to re-layout dynamically based on patterns of usage. We also have the issue of libraries using these methods to get offsets (sometimes of classes with the same layout as JDK classes) so they can directly access the fields of privileged classes. It's untenable for libraries to rely on this going forward.
> 
> The java.lang.invoke.VarHandle API (added in Java 9) provides a strongly typed reference to a variable that is a safe and a much better alternative to many cases that use these methods. Deprecating these method provides a gentle nudge in that directory. Once the Panama memory APIs are permanent then we can look at terminally deprecating and removing these methods, along with the accessors.

This pull request has now been integrated.

Changeset: 56ca66e8
Author:    Alan Bateman <alanb at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/56ca66e86f848d3790115aa2faec632c226d8cd2
Stats:     20 lines in 1 file changed: 20 ins; 0 del; 0 mod

8277863: Deprecate sun.misc.Unsafe methods that return offsets

Reviewed-by: psandoz, mchung

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

PR: https://git.openjdk.java.net/jdk/pull/6700


More information about the core-libs-dev mailing list