From f244bdc6bdcfb1d038d7c19727e33ef7693323fd Mon Sep 17 00:00:00 2001 From: Christopher Dykes Date: Mon, 20 Mar 2017 14:51:15 -0700 Subject: [PATCH] Give observer manager threads a name Summary: Re-landing D4618623 after it had to be reverted due to it's use of `FixedString`, which had broken GCC 4.8. `FixedString` should now be compiling correctly on GCC 4.8 so this should be fine now. Reviewed By: yfeldblum Differential Revision: D4727022 fbshipit-source-id: f85c6952fd82e6cd6042f8055ef54d9422f8b0f9 --- folly/experimental/observer/detail/ObserverManager.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/folly/experimental/observer/detail/ObserverManager.cpp b/folly/experimental/observer/detail/ObserverManager.cpp index f14b9092..7654dff5 100644 --- a/folly/experimental/observer/detail/ObserverManager.cpp +++ b/folly/experimental/observer/detail/ObserverManager.cpp @@ -16,8 +16,11 @@ #include #include +#include #include +#include #include +#include #include namespace folly { @@ -32,6 +35,8 @@ DEFINE_int32( 4, "How many internal threads ObserverManager should use"); +static constexpr StringPiece kObserverManagerThreadNamePrefix{"ObserverMngr"}; + namespace { constexpr size_t kCurrentQueueSize{10 * 1024}; constexpr size_t kNextQueueSize{10 * 1024}; @@ -45,7 +50,9 @@ class ObserverManager::CurrentQueue { FLAGS_observer_manager_pool_size = 1; } for (int32_t i = 0; i < FLAGS_observer_manager_pool_size; ++i) { - threads_.emplace_back([&]() { + threads_.emplace_back([this, i]() { + folly::setThreadName( + folly::sformat("{}{}", kObserverManagerThreadNamePrefix, i)); ObserverManager::inManagerThread_ = true; while (true) { -- 2.34.1