quick 8.8 не работает.
После обновления у меня появилась следующая беда. Квик работает, а потом может зависнуть и выходит сообщение от windows, что он перестал отвечать на запросы. Такое бывает только тогда, когда работает робот по покупке — продаже синтетических облигаций. Я уже и слипов наставил в код и все равно не спасает. Причем когда я отслеживаю 2-3 инструмента, может нормально сутки отработать и не зависнуть, ставлю мониторинг 10 инструментов, может десять минут отработать и в аут уйти. На версии 8.5 или 8.6 вообще писал недопустимая ошибка, давал ссылку на файл и предлагал отправить его разработчикам и больше не запускался. Помогала только деинсталяция и повторная установка. На версии 8.8 уже не просит обратиться к разработчикам и повторно запускается. Уже голову сломал, может у кого такое бывает? Причем другие программы на компьютере не зависают, само железо и параллельно запущенные приложения продолжают работать.
Слипы, имхо, лишние. Вообще, помогает всю обработку в main(), если без ДЛЛ работаете. В событиях оставить только необходимый минимум.
Про коллбэки, это уже конкретно программу надо смотреть — чего там, да как. Я так понял, коллбэки из ДЛЛ?
А, понял, коллбэки определяются в подписках на данные. Да, их тоже к минимуму.
Раз зависает из-за робота, в нем и нужно ковырять.
Причем гениально описано: Выходит проблема не из-за обновления?
Предположу что программа делает слишком много запросов, т.к. 2 работают, а 10 нет. Оптимизация мб?
Т.е. идет команда на создание заявки/вход в сделку по цене, начинается ожидание результата этого действия, в это время по другому инструменту аналогичная «запара», но т.к. поток один, то прога ждет пока отработает первый. А когда с десяток инструментов эти колбэки с результатами сами себя перегружают. Я не знаком с логикой робота. Это как догадка.
Ну и комент ниже про версию дллки наводит на определенные мысли (5.3 vs 5.1)
Одно ясно, проблема с выставлением заявок)
Это один из нюансов.