события не приходят после рестарта соединения


события не приходят после рестарта соединения
Atom
15.03.2011


Запускаю МТС, вызываю RegisterTrades, RegisterSecurity, RegisterQuotes, подписываюсь на события, запускаю стратегии и т.п. Все работает хорошо.

Затем останавливаю SmartCOM службу. После этого мне приходят ошибки (ниже) и через некоторое время SmartCOM запускается и приходит событие ITrader.Connected. Там я еще раз вызываю StartExport().

После этого никакие события не приходят (NewTrades, SecuritiesChanged, etc)

Код

15.03.2011 18:34:47 [OpenWealth.StockSharp.TraderInitializator.Trader_ConnectionError] ERROR: Ошибка соединения System.InvalidOperationException: SmartCOM не ответил на проверку живой-мертвый. Возможно, приложение SmartCOM зависло. ---> System.Runtime.InteropServices.COMException (0x800706BA): Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)
в StClientLib.StServerClass.GetPrortfolioList()
в Ecng.Trading.Smart.SmartComWrapper.#=qzWktXLkWRXjcy$9UPCrTtQ==(StServer #=qDE$BkALBNSP6uOJFV2SnqQ==)
в Ecng.Trading.Smart.SmartComWrapper.#=q75j_Z5JSRxNkiXV88FHEug==(Action`1 #=qqKsTnjrmu7pdXnaFSMdxhw==)
в Ecng.Trading.Smart.SmartComWrapper.#=qPAmHhfnOqQs1DyOx22FKIQ==()
в Ecng.Trading.Smart.SmartComWrapper.#=qTEZcqzKAm3Cn_kD2t7aeIKtT$8TmHKRNuNLZRbKLg7U=.#=qGabvzGf2W3n6e2vvgzqGFyHO1jY9wiU5NLC9CPAX9gI=()
--- Конец трассировки внутреннего стека исключений --- (28181)
15.03.2011 18:35:02 [OpenWealth.StockSharp.TraderInitializator.Trader_ConnectionError] ERROR: Ошибка соединения System.Runtime.InteropServices.COMException (0x800706BA): Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)
в StClientLib.StServerClass.disconnect()
в Ecng.Trading.Smart.SmartComWrapper.#=qnCgDm1vHPvXpt7N3mOxtVy8NZjT2eQuyDSB5hXbNr7Q=(StServer #=qKUBRzCyeMBm8zUOTVMXn3A==)
в Ecng.Trading.Smart.SmartComWrapper.#=q75j_Z5JSRxNkiXV88FHEug==(Action`1 #=qqKsTnjrmu7pdXnaFSMdxhw==)
в Ecng.Trading.Smart.SmartComWrapper.Disconnect()
в Ecng.Trading.Smart.SmartTrader.OnDisconnect()
в Ecng.Trading.Algo.BaseTrader.Disconnect()
в Ecng.Trading.Algo.BaseTrader.#=qgA3BsOJZFeBWXFGAp7wz7Q==() (15052)
15.03.2011 18:35:03 [OpenWealth.StockSharp.TraderInitializator.<Init>b__2] Соединение установлено. (751)
15.03.2011 18:35:03 [OpenWealth.StockSharp.TraderInitializator.<Init>b__2] Запускаем экспорт Smart ... (0)


Установка соединения и запуск экспорта:
Код

// подписываемся на событие успешного соединения
this.Trader.Connected += () =>
{
this.IsConnected = true;
Log.Out("Соединение установлено.", LogLevel.notice);

// запускаем экпорт, если не запущен
if (!this.Trader.IsExportRunning)
{
Log.Out("Запускаем экспорт " + Const.TraderType + " ...", LogLevel.notice);
this.Trader.StartExport();
}

_ConnectHandle.Set();
};

Теги:


Спасибо:


Mikhail Sukhov

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


Greene-nsk Перейти
Запускаю МТС, вызываю RegisterTrades, RegisterSecurity, RegisterQuotes, подписываюсь на события, запускаю стратегии и т.п. Все работает хорошо.

Затем останавливаю SmartCOM службу. После этого мне приходят ошибки (ниже) и через некоторое время SmartCOM запускается и приходит событие ITrader.Connected. Там я еще раз вызываю StartExport().

После этого никакие события не приходят (NewTrades, SecuritiesChanged, etc)


Бага еще актуальна?
Спасибо:

Greene-nsk

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


Mikhail Sukhov Перейти

Бага еще актуальна?


Вы здесь:
http://stocksharp.com/posts/m/6819/
написали, что стартовать register заново надо самостоятельно. Стартую самостоятельно.
В том же посте еще проблема с рестартом описана. Т.е. он часто просто не поднимается.
Спасибо:


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

loading
clippy