[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-openjfx-dev
Subject: Re: [Rev 01] RFR: 8235772: Remove use of deprecated finalize method from PiscesRenderer and Abstract
From: Ambarish Rapte <arapte () openjdk ! java ! net>
Date: 2020-01-29 5:00:05
Message-ID: 227HV6-gDx2KrlmEnCPRnfU3vH3rtgx7T8cBMvq5UsM=.419a2954-9c4d-4cde-a318-1f5d1109a7d0 () github ! com
[Download RAW message or body]
> The finalize() method is deprecated in JDK9. See [Java 9 deprecated \
> features](https://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html).
> And so the [PiscesRenderer.finalize()](https://github.com/openjdk/jfx/blob/71ca899f \
> bfc74d825c29b20a778d6d9eb243f90f/modules/javafx.graphics/src/main/java/com/sun/pisces/PiscesRenderer.java#L439) \
> and [AbstractSurface.finalize()](https://github.com/openjdk/jfx/blob/71ca899fbfc74d8 \
> 25c29b20a778d6d9eb243f90f/modules/javafx.graphics/src/main/java/com/sun/pisces/AbstractSurface.java#L100) \
> method should be removed.
> The change is,
> 1. Remove finalize method from PiscesRenderer and AbstractSurface classes.
> 2. Use [Disposer](https://github.com/openjdk/jfx/blob/71ca899fbfc74d825c29b20a778d6d \
> 9eb243f90f/modules/javafx.graphics/src/main/java/com/sun/prism/impl/Disposer.java#L48) \
> class for cleanup instead of finalize(). For SW pipeline the cleanup is initiated \
> in [here](https://github.com/openjdk/jfx/blob/71ca899fbfc74d825c29b20a778d6d9eb243f9 \
> 0f/modules/javafx.graphics/src/main/java/com/sun/javafx/tk/quantum/UploadingPainter.java#L195) \
> in UploadingPainer.java. 3. Added new JNI methods to JPiscesRenderer.c and \
> JAbstractSurface.c and removed the ones which were used previously with finalize() \
> method.
> Verification:
> Verified that the newly added dispose() methods get invoked as required and no OOM \
> occurs. 1. Create a sample program which adds and removes non 3D shapes and/or \
> controls to stage in a loop. 2. Run the program using -Dprism.order=sw, \
> -Dprism.verbose=true. (optional -Xmx50m) Expected Behavior:
> a. Maximum memory consumption after this change should reduce or remain same as \
> that of before this change. b. No OOM should occur with this change or without this \
> change.
The pull request has been updated with a new target base due to a merge or a rebase.
-------------
Commits:
- 0591e41f: 8235772: Remove use of deprecated finalize method from PiscesRenderer \
and AbstractSurface
Changes: https://git.openjdk.java.net/jfx/pull/66/files
Webrev: https://webrevs.openjdk.java.net/jfx/66/webrev.01
Stats: 110 lines in 5 files changed: 40 ins; 52 del; 18 mod
Patch: https://git.openjdk.java.net/jfx/pull/66.diff
Fetch: git fetch https://git.openjdk.java.net/jfx pull/66/head:pull/66
PR: https://git.openjdk.java.net/jfx/pull/66
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic