Ошибка соединения при повторном соединении
Михаил, подскажите, пожалуйста.. Я решил не использовать встроенный reconnect и написал следующий код:
Код
// подписываемся на событие разрыва соединения
this.Trader.Disconnected += () =>
{
Log.Out("Соединение разорвано.", LogLevel.notice);
if (!_IsDisconnectScheduled)
{
int secToWait = 20;
Log.Out("Ждем " + secToWait + " секунд и восcтанавливаем соединение.", LogLevel.notice);
Thread.Sleep(TimeSpan.FromSeconds(secToWait));
Log.Out("Соединяемся с сервером ...", LogLevel.notice);
this.Trader.Connect();
}
};
// подписываемся на событие успешного соединения
this.Trader.Connected += () =>
{
Log.Out("Соединение установлено.", LogLevel.notice);
...
};
В результате, после того как соединение оказывается разорвано, я всегда получаю следующий эксепшн и только после него сообщение об успешном соединении:
Код
15.03.2011 16:30:18 [OpenWealth.StockSharp.TraderInitializator.<Init>b__3] Соединение разорвано.
15.03.2011 16:30:18 [OpenWealth.StockSharp.TraderInitializator.<Init>b__3] Ждем 20 секунд и восcтанавливаем соединение.
15.03.2011 16:30:38 [OpenWealth.StockSharp.TraderInitializator.Connect] Соединяемся с сервером ...
15.03.2011 16:31:52 [OpenWealth.StockSharp.TraderInitializator.Trader_ConnectionError] ERROR: Ошибка соединения System.TimeoutException: Соединение не было установлено в отведенный отрезок времени.
15.03.2011 16:31:52 [OpenWealth.StockSharp.TraderInitializator.<Init>b__2] Соединение установлено.