bolt/deps/llvm-18.1.8/lldb/test/API/tools/lldb-server/thread-name/main.cpp
2025-02-14 19:21:04 +01:00

25 lines
606 B
C++

#include <pthread.h>
#if defined(__OpenBSD__)
#include <pthread_np.h>
#endif
#include <signal.h>
void set_thread_name(const char *name) {
#if defined(__APPLE__)
::pthread_setname_np(name);
#elif defined(__FreeBSD__) || defined(__linux__)
::pthread_setname_np(::pthread_self(), name);
#elif defined(__NetBSD__)
::pthread_setname_np(::pthread_self(), "%s", const_cast<char *>(name));
#elif defined(__OpenBSD__)
::pthread_set_name_np(::pthread_self(), name);
#endif
}
int main() {
set_thread_name("hello world");
raise(SIGINT);
set_thread_name("goodbye world");
raise(SIGINT);
return 0;
}