diff options
author | James O'Beirne <james.obeirne@gmail.com> | 2018-06-13 14:50:59 -0400 |
---|---|---|
committer | James O'Beirne <james.obeirne@gmail.com> | 2019-04-29 13:42:25 -0400 |
commit | ae5f2b6a6cc7b2260e9dff99c1bf378922e0e988 (patch) | |
tree | 6646e4d0936dc2217a10b3972fb9250f5beaadc9 /src/util/system.cpp | |
parent | 188ca75e5fe4837d16241446558c7566912f67b2 (diff) |
threads: introduce util/threadnames, refactor thread naming
This work is prerequisite to attaching thread names to log lines and deadlock
debug utilities. This code allows setting of an "internal" threadname per
thread on platforms where thread_local is available.
This commit also moves RenameThread() out of a more general module and adds a
numeric suffix to disambiguate between threads with the same name. It
explicitly names a few main threads using the new util::ThreadRename().
Diffstat (limited to 'src/util/system.cpp')
-rw-r--r-- | src/util/system.cpp | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/src/util/system.cpp b/src/util/system.cpp index 9594dd81bf..efd35bed55 100644 --- a/src/util/system.cpp +++ b/src/util/system.cpp @@ -60,10 +60,6 @@ #include <shlobj.h> #endif -#ifdef HAVE_SYS_PRCTL_H -#include <sys/prctl.h> -#endif - #ifdef HAVE_MALLOPT_ARENA_MAX #include <malloc.h> #endif @@ -1137,22 +1133,6 @@ void runCommand(const std::string& strCommand) LogPrintf("runCommand error: system(%s) returned %d\n", strCommand, nErr); } -void RenameThread(const char* name) -{ -#if defined(PR_SET_NAME) - // Only the first 15 characters are used (16 - NUL terminator) - ::prctl(PR_SET_NAME, name, 0, 0, 0); -#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__)) - pthread_set_name_np(pthread_self(), name); - -#elif defined(MAC_OSX) - pthread_setname_np(name); -#else - // Prevent warnings for unused parameters... - (void)name; -#endif -} - void SetupEnvironment() { #ifdef HAVE_MALLOPT_ARENA_MAX |