管道堵住问题的定位

来源:互联网 发布:java直播系统源码 编辑:程序博客网 时间:2024/04/29 13:31

问题描述:应用api通过管道来执行驱动的函数。现在发现命令发向管道后,驱动函数却并没有被执行。这是为什么?

定位过程:首先确认命令确实发向管道了,并且是超时返回。通过在仿真环境下的模拟,并没有发现问题。

                  经过试验,发现在有的状态下,管道可以正常工作。比对两种状态的不同,以及在好的状态下执行了哪些操作?因为执行某些函数后,导致程序崩溃,结果还是没有找到原因。

                  接着查看管道内消息的内容,发现存在大量的预期之外的控制消息。这些消息是哪里来的?

                  仔细查看代码,有另外一个任务定时的在往管道里发送命令,并且由于这些命令的执行时间比较长,导致大量的消息阻塞在管道里,而真正需要执行的命令没有机会得到执行,导致应用api调用超时返回。问题定位。

0 0