提交 66bf03b7 编写于 作者: D Denghui Dong 提交者: D-D-H

[Backport] 8230400: Missing constant pool entry for a method in stacktrace

Summary:

Test Plan: jdk/jfr

Reviewed-by: yuleil

Issue: https://github.com/alibaba/dragonwell8/issues/112
上级 70116579
/* /*
* Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -232,20 +232,22 @@ public final class MetadataRepository { ...@@ -232,20 +232,22 @@ public final class MetadataRepository {
staleMetadata = true; staleMetadata = true;
} }
// Lock around setOutput ensures that other threads dosn't // Lock around setOutput ensures that other threads don't
// emit event after setOutput and unregister the event class, before a call // emit events after setOutput and unregister the event class, before a call
// to storeDescriptorInJVM // to storeDescriptorInJVM
synchronized void setOutput(String filename) { synchronized void setOutput(String filename) {
if (staleMetadata) {
storeDescriptorInJVM();
}
jvm.setOutput(filename); jvm.setOutput(filename);
unregisterUnloaded(); unregisterUnloaded();
if (unregistered) { if (unregistered) {
staleMetadata = typeLibrary.clearUnregistered(); if (typeLibrary.clearUnregistered()) {
unregistered = false;
}
if (staleMetadata) {
storeDescriptorInJVM(); storeDescriptorInJVM();
} }
unregistered = false;
}
} }
private void unregisterUnloaded() { private void unregisterUnloaded() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册