如何知道和调试Linux中线程的执行顺序
如何知道和调试Linux中线程的执行顺序。尝试过Gdb,但没有多大帮助? 我远程连接到目标并使用gdb,但不确定如何查看所有线程的执行顺序。 通过使用gdb使用“信息线程”,但没有多大帮助。 我想查看进程和线程的所有信息以及执行顺序。 我使用了Htop命令,但对我帮助不大 如果有任何想法,请告诉我 我想看看。。。执行顺序 未定义执行顺序,将在不同的运行中更改 如果您的程序以任何方式依赖于该顺序,那么它将被破坏,您应该修复它(通过添加适当的锁定和/或同步)如何知道和调试Linux中线程的执行顺序,linux,multithreading,gdb,Linux,Multithreading,Gdb,如何知道和调试Linux中线程的执行顺序。尝试过Gdb,但没有多大帮助? 我远程连接到目标并使用gdb,但不确定如何查看所有线程的执行顺序。 通过使用gdb使用“信息线程”,但没有多大帮助。 我想查看进程和线程的所有信息以及执行顺序。 我使用了Htop命令,但对我帮助不大 如果有任何想法,请告诉我 我想看看。。。执行顺序 未定义执行顺序,将在不同的运行中更改 如果您的程序以任何方式依赖于该顺序,那么它将被破坏,您应该修复它(通过添加适当的锁定和/或同步) 如果你不知道如何修复它,那就找一本关于多
如果你不知道如何修复它,那就找一本关于多线程编程的好书。你说的“线程执行顺序”是什么意思?你是说当前正在执行哪个线程?或者所有线程PC的快照。或者??是的,我需要查看线程列表及其优先级,并查看线程是否按照项目中使用的调度过程运行。我已经尝试远程连接gdb,因为我们的目标只支持gdbserver。。当我给出“信息线程”时,它只给出一个线程信息。发行版是timesys linux。您可能想看看。这是一个跟踪框架,允许您钩住系统并处理事件,如上下文切换、函数退出和函数进入。与您相关的是哪个跟踪调度器开关。顺序取决于调度器,在我的体系结构中,它是循环的。我正在按照要求执行测试,以便根据进程/线程的优先级查看顺序和执行。