forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			23 lines
		
	
	
		
			506 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			506 B
		
	
	
	
		
			C++
		
	
	
	
| #include <pthread.h>
 | |
| #include <signal.h>
 | |
| 
 | |
| void set_thread_name(const char *name) {
 | |
| #if defined(__APPLE__)
 | |
|   ::pthread_setname_np(name);
 | |
| #elif defined(__FreeBSD__)
 | |
|   ::pthread_set_name_np(::pthread_self(), name);
 | |
| #elif defined(__linux__)
 | |
|   ::pthread_setname_np(::pthread_self(), name);
 | |
| #elif defined(__NetBSD__)
 | |
|   ::pthread_setname_np(::pthread_self(), "%s", name);
 | |
| #endif
 | |
| }
 | |
| 
 | |
| int main() {
 | |
|   set_thread_name("hello world");
 | |
|   raise(SIGINT);
 | |
|   set_thread_name("goodbye world");
 | |
|   raise(SIGINT);
 | |
|   return 0;
 | |
| }
 |