我正在调用下面的函数来为我的线程分配名称
pthread_setname_np(tid, name);
但是,我的二进制文件崩溃并出现以下错误:
Thread 9 "ABC" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffec267400 (LWP 3145191)]
0x00007ffff38ae84b in __pthread_setname_np (th=0, name=0x7fffec263a80 "XYZ") at ./nptl/pthread_setname.c:47
47 ./nptl/pthread_setname.c: No such file or directory.
但是,我的二进制文件崩溃并出现以下错误:
您的二进制文件正在崩溃因为您将
th = 0
传递给了pthread_setname_np()
——使用NPTL时,0
不是有效的pthread_t
值。
不幸的是,您没有显示其余的代码,因此无法提供进一步的帮助。