Очередь эксперта - это блокируемый ресурс. Когда в очередь записывается событие, эксперт ждёт (если конечно эксперт в данный момент не обрабатывает какое-либо событие)
События для эксперта поступают из очереди событий соответствующего графика, которые в свою очередь поступают из цикла обработки соответствующего символа. И этот цикл обработки не только раздаёт события своим графикам, но и занимается кучей разных дел.
Я уже Вам говорил, что ОС Windows не является операционной системой реального времени.
Задача очень просто формулируется: как написать советник, который не будет тормозить на ожидании очереди? Бесконечный цикл нельзя, т.к. Sleep - тормоз. И асинхронность идет лесом. Сейчас же ловить ожидания в виде долгих миллисекунд - не дело совсем.
Задача очень просто формулируется: как написать советник, который не будет тормозить на ожидании очереди? Бесконечный цикл нельзя, т.к. Sleep - тормоз. И асинхронность идет лесом. Сейчас же ловить ожидания в виде долгих миллисекунд - не дело совсем.
Не обманывайте себя и окружающих.
Все ваши заявления здесь описывают совершенно другую задачу: как написать советник, который не будет подтормаживать на железе 9ти летней давности, загруженном сверх всякой меры.
По поводу представленного исходника
Если Вам необходимо быстродействие, откажитесь от этого монстра, ибо Вы сами же себя и тормозите.
Этот инструмент измерения непригоден, так как сам вносит огромную погрешность
В своём скрипте я проставил
Вот лог для 5 итераций
Меньше 2 миллисекунд
Разработчики своим молчанием полностью признали наличие двух проблем.
Разработчики своим молчанием признали отстутствие проблем.
Вот лог для 5 итераций
Меньше 2 миллисекунд
Ваш скрипт.
Машина.
Разработчики своим молчанием признали отстутствие проблем.
Красава! Это нормально, когда тики приходят со временем меньше, чем в Обзоре рынка до этого?
Красава! Это нормально, когда тики приходят со временем меньше, чем в Обзоре рынка до этого?
Нормально.
Я отвечал на этот вопрос 5 дней назад, в этой же ветке:
SymbolInfoTick отдает данные, полученные от сервера брокера. Что сервер прислал, то вы и получаете.
Если есть вопросы по тиковому потоку, который транслирует ваш брокер, то и обращаться надо к вашему брокеру.
Очередь эксперта - это блокируемый ресурс. Когда в очередь записывается событие, эксперт ждёт (если конечно эксперт в данный момент не обрабатывает какое-либо событие)
События для эксперта поступают из очереди событий соответствующего графика, которые в свою очередь поступают из цикла обработки соответствующего символа. И этот цикл обработки не только раздаёт события своим графикам, но и занимается кучей разных дел.
Я уже Вам говорил, что ОС Windows не является операционной системой реального времени.
Задача очень просто формулируется: как написать советник, который не будет тормозить на ожидании очереди? Бесконечный цикл нельзя, т.к. Sleep - тормоз. И асинхронность идет лесом. Сейчас же ловить ожидания в виде долгих миллисекунд - не дело совсем.
Ваш скрипт.
А для 10 тысяч итераций?
А для 10 тысяч итераций?
Предлагаю другим поделиться результатом запуска этого скрипта на своей машине.
Нормально.
Я отвечал на этот вопрос 5 дней назад, в этой же ветке:
SymbolInfoTick отдает данные, полученные от сервера брокера. Что сервер прислал, то вы и получаете.
Если есть вопросы по тиковому потоку, который транслирует ваш брокер, то и обращаться надо к вашему брокеру.
Поэтому и задаю вопрос владельцам MQ-Demo.
Задача очень просто формулируется: как написать советник, который не будет тормозить на ожидании очереди? Бесконечный цикл нельзя, т.к. Sleep - тормоз. И асинхронность идет лесом. Сейчас же ловить ожидания в виде долгих миллисекунд - не дело совсем.
Не обманывайте себя и окружающих.
Все ваши заявления здесь описывают совершенно другую задачу: как написать советник, который не будет подтормаживать на железе 9ти летней давности, загруженном сверх всякой меры.