20 #ifndef MPD_THREAD_NAME_HXX 21 #define MPD_THREAD_NAME_HXX 23 #if defined(HAVE_PTHREAD_SETNAME_NP) && !defined(__NetBSD__) 24 # define HAVE_THREAD_NAME 26 #elif defined(HAVE_PRCTL) 27 # include <sys/prctl.h> 29 # define HAVE_THREAD_NAME 33 #ifdef HAVE_THREAD_NAME 40 #if defined(HAVE_PTHREAD_SETNAME_NP) && !defined(__NetBSD__) 46 pthread_setname_np(
name);
48 pthread_setname_np(pthread_self(),
name);
50 #elif defined(HAVE_PRCTL) && defined(PR_SET_NAME) 51 prctl(PR_SET_NAME, (
unsigned long)
name, 0, 0, 0);
57 template<
typename... Args>
61 #ifdef HAVE_THREAD_NAME 63 snprintf(buffer,
sizeof(buffer),
fmt, args...);
static void SetThreadName(const char *name)
static void FormatThreadName(const char *fmt, gcc_unused Args &&... args)
const Partition const char * name