From f3253b1e4a7164b58c0a8c8eb2b8f663946a9715 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sun, 7 Aug 2022 11:41:23 +0300 Subject: [PATCH] Remove support for log::register_thread(id, name); register thread name for pthread if possible --- libs/log/include/psemek/log/log.hpp | 13 ++++--------- libs/log/source/log.cpp | 11 +++++++---- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/libs/log/include/psemek/log/log.hpp b/libs/log/include/psemek/log/log.hpp index 52aa444e..4d772813 100644 --- a/libs/log/include/psemek/log/log.hpp +++ b/libs/log/include/psemek/log/log.hpp @@ -11,20 +11,15 @@ namespace psemek::log { void register_thread(std::string name); - void register_thread(std::thread::id id, std::string name); void unregister_thread(std::thread::id id); struct [[maybe_unused]] thread_registrator { - thread_registrator(std::string name, std::thread::id id) - : id_{id} - { - register_thread(id_, std::move(name)); - } - thread_registrator(std::string name) - : thread_registrator(std::move(name), std::this_thread::get_id()) - {} + : id_(std::this_thread::get_id()) + { + register_thread(std::move(name)); + } ~thread_registrator() { diff --git a/libs/log/source/log.cpp b/libs/log/source/log.cpp index ce166258..553dd402 100644 --- a/libs/log/source/log.cpp +++ b/libs/log/source/log.cpp @@ -85,11 +85,14 @@ namespace psemek::log void register_thread(std::string name) { - register_thread(std::this_thread::get_id(), std::move(name)); - } +#ifdef _PTHREAD_H +#ifdef _GNU_SOURCE + ::pthread_setname_np(::pthread_self(), name.data()); +#endif +#endif + + auto id = std::this_thread::get_id(); - void register_thread(std::thread::id id, std::string name) - { { std::lock_guard lock{thread_names_mutex};