简体   繁体   English

系统停止响应并引发yami I / O错误

[英]System stop responding and throws yami i/o error

I need suggestion about YAMI library . 我需要有关YAMI库的建议。 I have a system which receives Json string from external interface and parse that received string and send that message to internal ip address for the required action. 我有一个系统,该系统从外部接口接收Json字符串,然后解析接收到的字符串并将该消息发送到内部ip地址以执行所需的操作。 The exchange of messages within the internal ip address has been taken care by Yami library. 内部IP地址内的消息交换已由Yami库负责。 everything works fine but occasionally it displays yam i/o error and system doesn't response unless it is restarted. 一切正常,但偶尔会显示yam I / O错误,并且除非重新启动,否则系统不会响应。 The whole software is written in C++ and C and development os is fedora 11. 整个软件是用C ++和C编写的,而开发操作系统是fedora 11。

I have tried to investigate the problem but I am bit clueless as I have not found much help on internet and my testing method doesn't work. 我已尝试调查此问题,但由于在互联网上找不到太多帮助,并且我的测试方法无效,因此我一无所知。

its strange that system works for few hours and then crash . 奇怪的是,该系统工作了几个小时,然后崩溃了。 For example If I leave system idle for half an hour and then try to send message via external interface it crashes producing yami i/o error or even while sending continuos command it crashes. 例如,如果我将系统闲置半小时,然后尝试通过外部接口发送消息,则崩溃,从而导致yami I / O错误,甚至在发送continues命令时也会崩溃。

Any help or suggestion will be of great help. 任何帮助或建议都会有很大帮助。

Thanks and regards, 谢谢并恭祝安康,
Sam 山姆

It looks like this exception is from a core::io_error result which is translated to a runtime exception by details::translate_result_to_exception() . 看起来此异常来自core::io_error结果,由details::translate_result_to_exception()转换为运行时异常。 Most of this error originates from the source code in yami/posix in your case. 在您的情况下,此错误大部分源自yami / posix中的源代码。

What you have to do now is figure out where the error originates and ultimately the source of the issue. 您现在所要做的就是找出错误的出处,并最终找出问题的根源。 You should be able to get a rough idea from what happens in your code when the error occurs (are you creating a new connection, sending data, receiving data, etc...). 您应该能够从发生错误时代码中发生的事情(创建新连接,发送数据,接收数据等)中大致了解。

If that doesn't yield any obvious results I would probably create a test project using the yami source code instead of the library file so I would be able to trace into the yami code to where the error originates from. 如果那没有产生任何明显的结果,我可能会使用yami源代码而不是库文件创建一个测试项目,这样我就可以追溯到yami代码中错误的出处。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM