RFR: 8210233: Prepare Klass::is_loader_alive() for concurrent class unloading
kim.barrett at oracle.com
Thu Aug 30 19:27:03 UTC 2018
> On Aug 30, 2018, at 2:56 PM, Erik Österlund <erik.osterlund at oracle.com> wrote:
> The Klass::is_loader_alive() facility currently assumes that CLDs are set to unloading before giving a correct answer. This is a problem for concurrent class unloading. This needs to instead be evaluated in a more concurrency friendly fashion, so that it will give the right answer even in concurrent contexts.
> The proposed solution is to stop using the cached unloading value, and instead ask the CLD if it is_alive(), which utilizes a phantom load on the CLD holder, and is concurrency friendly.
Nearby comments involving "unloading" should be updated.
More information about the hotspot-runtime-dev