Не правильно расчитывается ExportTimeOutInterval
Atom Ответить
24.11.2011


Код

this.Trader = new QuikTrader(this.Path.Text);
this.Trader.ReConnectionSettings.Interval = TimeSpan.FromSeconds(10);
this.Trader.ReConnectionSettings.WorkingTime = Exchange.Rts.WorkingTime;
this.Trader.ReConnectionSettings.ExportTimeOutInterval = TimeSpan.FromSeconds(30);
this.Trader.ReConnectionSettings.ExportTimeOut += delegate { MessageBox.Show("Данные не поступают."); };


Такой код извещал о не поступлении данных примерно раз в 1,3 минуты, а не в 30 сек, при реальном отсутсвии данных.
В чем может быть проблема?

Если поставить TimeSpan.FromSeconds(60);, то первое сообщение будет примерно через 1,47 второе через 2 минуты, третье ещё через 2.

Теги:


Спасибо:




4 Ответов
Alexander

Фотография
Дата: 26.11.2011
Ответить


Подпишитесь на событие NewDataExported с распечаткой времени последних данных
Также добавьте время вывода сообщения по событию ExportTimeOut

Всё работает следующим образом: раз в ExportTimeOutInterval мы смотрим - если разница между нынешним временем и последним временем NewDataExported больше ExportTimeOutInterval то поднимаем ExportTimeOut

Поэтому вполне может быть следующее:
в 10:14:29 посмотрели - данные идут, всё ок
в 10:14:30 пришли данные, обновили время последнего прихода данных
в 10:14:59 посмотрели - разница между текущим временем и последним приходом = 29 секунд < 30 - всё ок
в 10:15:29 посмотрели - разница = 59 секунд > 30 - подняли событие

в итоге от остановки данных до события прошло 59 секунд. у вас вполне возможно такая ситуация
Спасибо:

Alexander

Фотография
Дата: 28.11.2011
Ответить


Значит моё предположение верное, всё работает согласно тому, как я написал.
Если хотите быстрее - уменьшайте таймаут в 2 раза.
Спасибо:

vader

Фотография
Дата: 06.12.2011
Ответить


Скажите пожалуйста, что именно понимается под данными? Стакан, сделки, ещё что-то?
На что ориентируется ExportTimeOut и от чего он отсчитывает отсутсвие данных?
Автор топика
Спасибо:

Alexander

Фотография
Дата: 06.12.2011
Ответить


vader Перейти
Скажите пожалуйста, что именно понимается под данными? Стакан, сделки, ещё что-то?
На что ориентируется ExportTimeOut и от чего он отсчитывает отсутсвие данных?


Любые по которым запущен экспорт
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy