Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何知道和调试Linux中线程的执行顺序_Linux_Multithreading_Gdb - Fatal编程技术网

如何知道和调试Linux中线程的执行顺序

如何知道和调试Linux中线程的执行顺序,linux,multithreading,gdb,Linux,Multithreading,Gdb,如何知道和调试Linux中线程的执行顺序。尝试过Gdb,但没有多大帮助? 我远程连接到目标并使用gdb,但不确定如何查看所有线程的执行顺序。 通过使用gdb使用“信息线程”,但没有多大帮助。 我想查看进程和线程的所有信息以及执行顺序。 我使用了Htop命令,但对我帮助不大 如果有任何想法,请告诉我 我想看看。。。执行顺序 未定义执行顺序,将在不同的运行中更改 如果您的程序以任何方式依赖于该顺序,那么它将被破坏,您应该修复它(通过添加适当的锁定和/或同步) 如果你不知道如何修复它,那就找一本关于多

如何知道和调试Linux中线程的执行顺序。尝试过Gdb,但没有多大帮助? 我远程连接到目标并使用gdb,但不确定如何查看所有线程的执行顺序。 通过使用gdb使用“信息线程”,但没有多大帮助。 我想查看进程和线程的所有信息以及执行顺序。 我使用了Htop命令,但对我帮助不大

如果有任何想法,请告诉我

我想看看。。。执行顺序

未定义执行顺序,将在不同的运行中更改

如果您的程序以任何方式依赖于该顺序,那么它将被破坏,您应该修复它(通过添加适当的锁定和/或同步)


如果你不知道如何修复它,那就找一本关于多线程编程的好书。

你说的“线程执行顺序”是什么意思?你是说当前正在执行哪个线程?或者所有线程PC的快照。或者??是的,我需要查看线程列表及其优先级,并查看线程是否按照项目中使用的调度过程运行。我已经尝试远程连接gdb,因为我们的目标只支持gdbserver。。当我给出“信息线程”时,它只给出一个线程信息。发行版是timesys linux。您可能想看看。这是一个跟踪框架,允许您钩住系统并处理事件,如上下文切换、函数退出和函数进入。与您相关的是哪个跟踪调度器开关。顺序取决于调度器,在我的体系结构中,它是循环的。我正在按照要求执行测试,以便根据进程/线程的优先级查看顺序和执行。