c# – Bloomberg APIv3返回慢消费者警告
作者:互联网
我基于API 3.2.9.0的SubscriptionWithEventHandlerExample示例在c#中创建了一个程序.订阅了大约500个实时数据证券后,我收到了一些声明SlowConsumerWarning和SlowConsumerWarningCleared的ADMIN事件警告.我在某个地方读到它引入了一些延迟,直到我处理所有事件.
问题是在我的代码中我只收到来自bloomberg的回调.事件队列甚至不在我的程序中!
我试过的一些事情:
>提高队列限制,在会话选项中设置MaxEventQueueSize(似乎没有效果)
>看看我是否收到任何超时事件(不,我没有得到任何)
>创建多个会话并在每个中订阅50个证券(现在我收到多个警告,每个线程一个)
有什么我可以做的或这种行为超出我的范围?
解决方法:
您可以在专用线程中处理数据,只让Bloomberg回调对数据进行排队.您的数据处理线程将从队列中读取数据并执行任何耗时的工作.这可能会解决您的问题,具体取决于触发SlowConsumerWarning的原因.但是,如果您处理数据的代码太慢,那么您的队列会随着时间的推移而填满.
标签:c,api,bloomberg 来源: https://codeday.me/bug/20190610/1213547.html