首页 > 解决方案 > 如果 quickfixj 在 onmessage 中崩溃,我会丢失当前的消息吗?

问题描述

需要了解如果我的发起者收到一条消息但在 onMessage 函数内部崩溃,我是否仍会通过重置崩溃时正在处理的序列号重新启动,然后再次接收它?所以我不会丢失消息?当进程退出 onMessage 函数时,seqnum 在什么时候增加?

标签: quickfixj

解决方案


根据 QuickfixJ 的代码,它会在处理 onMessage 回调后递增 nextSeqNum 以接收。因此,如果 onMessage 中有异常,则接收的 nextSeqNum 将不会增加。然后在接收下一条消息时,序列号会出现间隙,Quickfixj会自动发送重发请求。

您可以在此处浏览代码:https ://github.com/quickfix-j/quickfixj

您仍然可以使用配置更改行为:“RejectMessageOnUnhandledException

有关文档,请参阅:https ://www.quickfixj.org/usermanual/1.6.1/usage/configuration.html

如果您需要更多指导,请告诉我。


推荐阅读