Reduce volatile reads in GlobalOpenTelemetry.get (#4009)

This commit is contained in:
Anuraag Agrawal 2021-12-21 11:49:15 +09:00 committed by GitHub
parent 4fbcc5c860
commit d88b09cc0b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 3 deletions

View File

@ -51,9 +51,11 @@ public final class GlobalOpenTelemetry {
* interface FQCN but the specified provider cannot be found.
*/
public static OpenTelemetry get() {
if (globalOpenTelemetry == null) {
OpenTelemetry openTelemetry = globalOpenTelemetry;
if (openTelemetry == null) {
synchronized (mutex) {
if (globalOpenTelemetry == null) {
openTelemetry = globalOpenTelemetry;
if (openTelemetry == null) {
OpenTelemetry autoConfigured = maybeAutoConfigure();
if (autoConfigured != null) {
@ -65,7 +67,7 @@ public final class GlobalOpenTelemetry {
}
}
}
return globalOpenTelemetry;
return openTelemetry;
}
/**