我正在用fork()创建100个孩子,它们在有限的时间内(10秒)使用信号量使自己同步,然后在信号处理程序中被kill()杀死。我一直从这个孩子中的一个孩子(可能是第54位和第99位)获得SIGSEGV退出状态,该状态会打断他之后的所有孩子,直到SIGALRM和kill()由于时间到期。我正在尝试使用GDB通过命令set follow-fork-mode child
来跟踪孩子,但是它是随机发生的,所以我不知道要跟随哪一个孩子,也不知道从哪里得到细分错误。
我是GDB的新手,所以请保持清晰。谢谢。