调用 NTPL 函数 __pthread_setname_np() 时二进制崩溃

问题描述 投票:0回答:1

我正在调用下面的函数来为我的线程分配名称

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.
multithreading pthreads posix nptl
1个回答
0
投票

但是,我的二进制文件崩溃并出现以下错误:

您的二进制文件正在崩溃因为您将

th = 0
传递给了
pthread_setname_np()
——使用NPTL时,
0
不是有效的
pthread_t
值。

不幸的是,您没有显示其余的代码,因此无法提供进一步的帮助。

© www.soinside.com 2019 - 2024. All rights reserved.