我在同一文件中有父线程和子线程。遵循主线程时,gdb没有问题:它可以使用“ layout src”命令正确显示源代码,并使用“ disp val”命令正确显示变量值。但是,一旦我切换到其他线程(使用命令“线程5”),“布局”将无法显示源代码,并显示“无可用源”,而“ disp var”则显示“当前上下文中没有符号var”。 / p>
编辑:
我怀疑我没有使用正确的“ libthread_db”文件。但是,我不知道什么是“ libthread_db”,也不知道选择的是什么。如果您认为这可能是问题的根源,那么可以建议一些兼容的libthread_db文件吗?
非常感谢您的帮助!
答案 0 :(得分:1)
“布局”无法显示源代码,并显示“没有可用的源代码”,而“显示变量”则显示“当前上下文中没有符号变量”。
这可能意味着:
libc
或libpthread
函数中,线程(线程之间没有父/子关系)被阻塞,并且尝试从线程被阻塞的任何地方开始up
,一旦您处于应用程序级别,就应该重新获得源代码。