2014-02-12 44 views
0

无论如何,从发起者发送消息时设置请求超时?请求在Quickfix中暂停?

我们遇到了一个问题,我们迟到了接受方的回复,并且应用程序进入了不响应模式。问题可能与网络延迟等有关,但我认为如果我们可以在这里设置超时选项将会很好。

看到应用程序回调没有找到任何内容。

我想与SendToTarget API设置超时选项,,

任何建议

+0

它真的是一个迟到的回复,还是你可能意外地阻塞了回调线太久了?您必须确保您不在MessageCracker回调中执行耗时的操作。 –

+0

不,我们没有在回调中执行时间昂贵的操作。是的,它只是一个迟到的回复......因为接受者不是很稳定,因为我们现在也不是控制接受者部分......我们知道接受者方面的根本问题,但是作为我们希望确保没有阻止我们的发起人。 – Nauty

回答

1

你加在您的配置文件CheckLatencyMaxLatency并确认了吗?

CheckLatency如果设置为Y,必须在规定的秒数内收到来自对方的消息(请参阅MaxLatency)。如果系统使用本地时间作为时间戳而不是GMT,那么关闭此功能非常有用。

MaxLatency如果CheckLatency设置为Y,则它定义了消息处理所允许的秒数等待时间。默认值为120的正整数

+0

与CheckLatency和Max Latency一起尝试,但它看起来像快速修复不使用这些标签或实现丢失...你是否尝试过延迟配置? – Nauty

0

我遇到使用QuickFix/N

同样的问题,查看源代码的1.4版本,从配置文件中读取这些设置的部分被注释掉和更换与硬编码的默认值。

// FIXME to get from config if available 
session.MaxLatency = 120; 
session.CheckLatency = true;