Виснет Connect при переподключении
Atom Ответить
02.05.2013


В версии 4.1.12 при использовании SmartTrader виснет Connect.
При первом подключении все нормально, но если сделать Disconnect, а потом Connect, то все повиснет.
До этого использовал 4.1.8.23281 проблем не было.

Код

        private readonly SmartTrader _trader = new SmartTrader("XXXXXX", "XXXXXX", "213.247.232.238:8090".To<IPEndPoint>());        
        private bool _isConnected;
        private bool _isEvent;
        private void button_Connect_Click(object sender, RoutedEventArgs e)
        {
            if (!_isEvent)
            {
                _trader.Connected += () => this.GuiAsync(() => Debug.WriteLine("Connected"));
                _trader.Disconnected += () => this.GuiAsync(() => Debug.WriteLine("DisConnected"));
                _trader.NewPortfolios += port => this.GuiAsync(() => port.ForEach(p =>
                {
                    if (p.Name != "BPXXXX-RF-01") return;
                    Debug.WriteLine("Портфель найден");
                }));
                _isEvent = true;
            }
            if (!_isConnected)
            {
                _trader.Connect();
                _isConnected = true;
            }
            else
            {
                _trader.Disconnect();
                _isConnected = false;
            }
        }

Теги:


Спасибо:



Скидка 15% на все продукты до 5 апреля (осталось 2 дней).

5 Ответов
esper

Фотография
Программист
Дата: 02.05.2013
Ответить


Что в логах? ProcessDataError, ConnectionError?
Спасибо:

MenDel

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


esper Перейти
Что в логах? ProcessDataError, ConnectionError?


В логах одна только фраза
Экспорт остановлен
Хотя я его и не запускал.
ProcessDataError, ConnectionError - пусто
Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 02.05.2013
Ответить


Ага, есть такая бага. Пока попробуйте выставить RestartService=false.
Спасибо:

MenDel

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


А не придумали еще как бороться с такой вот фигней?
Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)

А то приходится полностью удалять трейдера и заново все создавать, чтоб подключиться.
Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 02.05.2013
Ответить


В 4.1.12 для этих целей решили заменить завершение процесса на перезапуск сервиса.
Спасибо:


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

loading
clippy