- 主题:请教,多个线程如何快速定位哪个线程崩溃
使用std::thread创建了多个线程,不确定运行中哪个线程运行错误,请问有什么有效的方法能够快速定位,谢谢
--
FROM 117.107.176.*
可以给线程起名字。gdb能看到线程名字。
【 在 wishie (抗击时间) 的大作中提到: 】
: 使用std::thread创建了多个线程,不确定运行中哪个线程运行错误,请问有什么有效的方法能够快速定位,谢谢
--
FROM 124.207.9.*
是的,我这是这么想的,用qt写代码的时候用过,但到了c++11 std::thread 这不太会了
【 在 jszizsj (jszizsj) 的大作中提到: 】
: 可以给线程起名字。gdb能看到线程名字。
--
FROM 117.107.176.*
一行代码就可以了。
Linux是 pthread_setname_np 函数,Windows应该也有类似的。
【 在 wishie (抗击时间) 的大作中提到: 】
: 是的,我这是这么想的,用qt写代码的时候用过,但到了c++11 std::thread 这不太会了
--
FROM 124.207.9.*
请问用std::thread()创建的线程也能这么命名吗,我没找到使用的方式
【 在 jszizsj (jszizsj) 的大作中提到: 】
: 标 题: Re: 请教,多个线程如何快速定位哪个线程崩溃
: 发信站: 水木社区 (Wed Sep 1 16:50:12 2021), 站内
:
: 一行代码就可以了。
:
: Linux是 pthread_setname_np 函数,Windows应该也有类似的。
:
:
: 【 在 wishie (抗击时间) 的大作中提到: 】
: : 是的,我这是这么想的,用qt写代码的时候用过,但到了c++11 std::thread 这不太会了
:
:
: --
:
: ※ 来源:·水木社区 mysmth.net·[FROM: 124.207.9.*]
--
FROM 117.107.176.*
可以的。写在std::thread绑定的函数体里面即可。
【 在 wishie (抗击时间) 的大作中提到: 】
: 请问用std::thread()创建的线程也能这么命名吗,我没找到使用的方式
--
FROM 124.207.9.*
您的意思是在线程函数中用std::thread::native_handle() 和 pthread_setname_np()配合使用吗
【 在 jszizsj (jszizsj) 的大作中提到: 】
: 可以的。写在std::thread绑定的函数体里面即可。
--
FROM 117.107.176.*
pthread_setname_np(pthread_self(), name.substr(0, 15).c_str());
【 在 wishie (抗击时间) 的大作中提到: 】
: 您的意思是在线程函数中用std::thread::native_handle() 和 pthread_setname_np()配合使用吗
--
FROM 124.207.9.*
牛~
【 在 jszizsj 的大作中提到: 】
: pthread_setname_np(pthread_self(), name.substr(0, 15).c_str());
:
:
--
FROM 222.128.179.*
线程崩溃程序不会crash吗?
【 在 wishie (抗击时间) 的大作中提到: 】
: 使用std::thread创建了多个线程,不确定运行中哪个线程运行错误,请问有什么有效
: 的方法能够快速定位,谢谢
--
FROM 119.139.199.*