先项目中基本都是多线程并行,但是对于多线程的调试,本人还不是很熟悉,此贴作为多线程调试经验的记录。
1、有个坑已经连续踩了两次,每次调的身心俱竭。
多线程调试不要一直用单步调试。尤其排查起线程时,单步调试到起线程后其实那块可能已经起线程成功了,但是你单步的调,CPU没立马切到你新起的线程那去,所以容易看起来像是没创建成功。所以对于新起的线程,想验证起成功没,不要去单步调,直接开跑,这样才能快速验证线程有没有起成功。
这也从侧面证明了一点,多线程其实也是单线程?只是时间片轮换?
先项目中基本都是多线程并行,但是对于多线程的调试,本人还不是很熟悉,此贴作为多线程调试经验的记录。
1、有个坑已经连续踩了两次,每次调的身心俱竭。
多线程调试不要一直用单步调试。尤其排查起线程时,单步调试到起线程后其实那块可能已经起线程成功了,但是你单步的调,CPU没立马切到你新起的线程那去,所以容易看起来像是没创建成功。所以对于新起的线程,想验证起成功没,不要去单步调,直接开跑,这样才能快速验证线程有没有起成功。
这也从侧面证明了一点,多线程其实也是单线程?只是时间片轮换?