aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/monlib/metrics/metric_registry.h
diff options
context:
space:
mode:
authorarcadia-devtools <arcadia-devtools@yandex-team.ru>2022-02-11 11:03:03 +0300
committerarcadia-devtools <arcadia-devtools@yandex-team.ru>2022-02-11 11:03:03 +0300
commit9e0f7aea7799e801eb90af47c09825358537a718 (patch)
tree1baef65b00ef396862a4bbadb1fb62237ac929dc /library/cpp/monlib/metrics/metric_registry.h
parenta9af1955eae1da5beab8f35afe22635c467084b7 (diff)
downloadydb-9e0f7aea7799e801eb90af47c09825358537a718.tar.gz
intermediate changes
ref:23d75af30a9649405a1b3643fbbd9810cf9f1987
Diffstat (limited to 'library/cpp/monlib/metrics/metric_registry.h')
-rw-r--r--library/cpp/monlib/metrics/metric_registry.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/library/cpp/monlib/metrics/metric_registry.h b/library/cpp/monlib/metrics/metric_registry.h
index 670cf8651e..6d5a59f04d 100644
--- a/library/cpp/monlib/metrics/metric_registry.h
+++ b/library/cpp/monlib/metrics/metric_registry.h
@@ -58,6 +58,11 @@ namespace NMonitoring {
explicit TMetricRegistry(const TLabels& commonLabels);
/**
+ * Not thread-safe. There should be no concurrent operations in the registry.
+ */
+ TMetricRegistry& operator=(TMetricRegistry&& other);
+
+ /**
* Get a global metrics registry instance.
*/
static TMetricRegistry* Instance();
@@ -116,7 +121,7 @@ namespace NMonitoring {
IHistogramCollectorPtr collector) override;
private:
- TRWMutex Lock_;
+ THolder<TRWMutex> Lock_ = MakeHolder<TRWMutex>();
THashMap<ILabelsPtr, IMetricPtr> Metrics_;
template <typename TMetric, EMetricType type, typename TLabelsType, typename... Args>