последовательность:
- добавляю обработчик StrategyManager.NewStrategies
- вызываю StrategyManager.Load("my.xml");
- стартую экспорт
после этого НИ разу не вызывается обработчик StrategyManager.NewStrategies зато вызвался Strategy.DisposeNative()
куда копать?
Комментарии (10)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
А инструменты и портфель экспортировались, для которых была сохранена стратегия?
В любом случае непонятно, с чего вызвался DisposeNative().. Что ли те стратегии, которые загрузились из файла, но для которых не нашелся инструмент или счет "диспоузятся"?
Посмотреть, пришли ли они в ITrader.NewSecurities и ITrader.NewPortfolios.
А как Вы это увидели, что вызвался DisposeNative?
Под дебаггером. Переопределяю его у себя.
Пришлите стек-трейс.
Вижу лишь вот такое:
Лучше переопределить DisposeManaged и туда поставить бряку. DisposeNative вызывается, когда объект собирается GC.
В него управление не передается..
т.е. вызывается только DisposeNative, эксепшенов нет - проверяю try .. catch (Exception ex).
В него управление не передается..
т.е. вызывается только DisposeNative, эксепшенов нет - проверяю try .. catch (Exception ex).
Все, что понятно - собирается сборщиком мусора стратегия... Но это слабо коррелируется с StrategyManager.Load и то, что не вызывается StrategyManager.NewStrategies. Вы смотрели на события появления портфелей и инструментов? Они приходят для загружаемых стратегий?