From 96931d6f78ccc21ec38cd4655b1a250893a6f252 Mon Sep 17 00:00:00 2001 From: Giel van Schijndel Date: Sun, 24 Jun 2012 17:03:57 +0200 Subject: Give threads a recognisable name to aid in debugging NOTE: These thread names are visible in gdb when using 'info threads'. Additionally both 'top' and 'ps' show these names *unless* told to display the command-line instead of task name. Signed-off-by: Giel van Schijndel --- src/util.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/util.cpp') diff --git a/src/util.cpp b/src/util.cpp index 9881545a02..56755a25bc 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -51,6 +51,8 @@ namespace boost { #endif #include /* for _commit */ #include "shlobj.h" +#elif defined(__linux__) +# include #endif using namespace std; @@ -1275,3 +1277,13 @@ void runCommand(std::string strCommand) printf("runCommand error: system(%s) returned %d\n", strCommand.c_str(), nErr); } +void RenameThread(const char* name) +{ +#if defined(__linux__) && defined(PR_SET_NAME) + // Only the first 15 characters are used (16 - NUL terminator) + ::prctl(PR_SET_NAME, name, 0, 0, 0); +#else + // Prevent warnings for unused parameters... + (void)name; +#endif +} -- cgit v1.2.3