[OpenJDK 2D-Dev] [14] RFR JDK-8235147: Release HDC from passiveDCList sooner

Alexey Ivanov alexey.ivanov at oracle.com
Sun Dec 1 15:04:27 UTC 2019


Hello,

Please review the following fix for JDK:

JBS: https://bugs.openjdk.java.net/browse/JDK-8235147
Webrev: http://cr.openjdk.java.net/~aivanov/8235147/webrev.00/


When a DC becomes unused, it is moved from activeDCList to passiveDCList 
to be released later. It will stay in the passiveDCList until a new DC 
is requested for the same window or the window is destroyed.

The DCs in passiveDCList will never be used again, so we can release 
them as soon as another request for a DC comes in.

The test case, ManyFramesTest.java, attached to the bug creates and 
displays 10 frames. Then it hides the 9 frames. At this point, 
passiveDCList contains 9 entries. These DCs will not be released until 
the corresponding frame is shown and painted again or the frame is 
destroyed.


The fix releases all DCs currently in passiveDCList when another DC is 
requested.
With the fix, when running ManyFramesTest.java test case, the number of 
entries in passiveDCList does not grow, the list contains at most 1 entry.

Mach5 for client tests is green.

-- 
Regards,
Alexey


More information about the 2d-dev mailing list