Commit 20f92b10 by Abseil Team Committed by Copybara-Service

Use absl::NoDestructor for global FlagRegistry.

PiperOrigin-RevId: 582861689
Change-Id: Iac257539ab282e9bfdc6d90e86c8da0c0d57b9c9
parent aa146013
...@@ -190,6 +190,7 @@ cc_library( ...@@ -190,6 +190,7 @@ cc_library(
":private_handle_accessor", ":private_handle_accessor",
"//absl/base:config", "//absl/base:config",
"//absl/base:core_headers", "//absl/base:core_headers",
"//absl/base:no_destructor",
"//absl/container:flat_hash_map", "//absl/container:flat_hash_map",
"//absl/strings", "//absl/strings",
"//absl/synchronization", "//absl/synchronization",
......
...@@ -169,6 +169,7 @@ absl_cc_library( ...@@ -169,6 +169,7 @@ absl_cc_library(
absl::strings absl::strings
absl::synchronization absl::synchronization
absl::flat_hash_map absl::flat_hash_map
absl::no_destructor
) )
# Internal-only target, do not depend on directly. # Internal-only target, do not depend on directly.
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
#include <string> #include <string>
#include "absl/base/config.h" #include "absl/base/config.h"
#include "absl/base/no_destructor.h"
#include "absl/base/thread_annotations.h" #include "absl/base/thread_annotations.h"
#include "absl/container/flat_hash_map.h" #include "absl/container/flat_hash_map.h"
#include "absl/flags/commandlineflag.h" #include "absl/flags/commandlineflag.h"
...@@ -169,7 +170,7 @@ void FlagRegistry::RegisterFlag(CommandLineFlag& flag, const char* filename) { ...@@ -169,7 +170,7 @@ void FlagRegistry::RegisterFlag(CommandLineFlag& flag, const char* filename) {
} }
FlagRegistry& FlagRegistry::GlobalRegistry() { FlagRegistry& FlagRegistry::GlobalRegistry() {
static FlagRegistry* global_registry = new FlagRegistry; static absl::NoDestructor<FlagRegistry> global_registry;
return *global_registry; return *global_registry;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment