gpt4 book ai didi

java - SocketInitiator 的队列容量使用情况 (QuickFIX/J)

转载 作者:行者123 更新时间:2023-11-30 02:28:32 26 4
gpt4 key购买 nike

我最近开始使用 QuickFIX/J 库通过 FIX 协议(protocol)与 APA(批准的出版安排)服务进行通信和发送实时报告消息。

SocketInitiator 中的参数之一构造函数是 queueCapacity但不幸的是,文档中没有太多关于其用法的信息。据我所知,它用于确定 SocketInitiator 的内部队列的大小。异步处理消息。如果未通过构造函数提供,则默认值设置为 10000。

我想知道是否有任何关于此处应使用什么值的指南,10000 是否“足够好”以及如果达到队列容量最大大小会发生什么。

最佳答案

执行SingleThreadedEventHandlingStrategy in 1.6.3时使用的队列是 java.util.concurrent.LinkedBlockingQueue .

使用的构造函数是public LinkedBlockingQueue(int capacity)这会创建一个固定宽度的队列。如果达到最大容量并且 SessionMessageEvent 实例为 put在队列上,放置事件的线程会阻塞,直到队列中的空间可用(即直到队列中的事件已被处理)。

我大胆猜测一下,对于 99.9% 使用 QuickFIX/J 的情况,10000 就足够了。

关于java - SocketInitiator 的队列容量使用情况 (QuickFIX/J),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44900616/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com