Всем добре
Продолжаю изучать доку и наткнулся на странное поведение дебаггера в части работы с точкой останова, в чем суть: первый запуск код как и положено останавливается на точке останова, все последующие запуски точка остановка "не отрабатывает", при этом в терминале открывается несколько сеансов отладки и больше ничего ничего не происходит. Попробовал несколько раз, поведение всегда одинаковое. Подскажите, то ли я не то жму, то ли "лыжи не едут".
Снял видео с экрана на всякий случай, чтобы было более понятно что к чему происходит:
Прошу подсказать почему:
-- редактор на второй и последующих запусках отладки уже не останавливается на точке
-- почему "сеанс" отладки не прекращается после нажатия в редакторе "Завершение отладки", а так и продолжает висеть в терминале
-- почему даже если в терминале вручную удалить все "сеансы" отладки, то все равно не произойдет остановки в точке останова
Проверял несколько раз, поведение IDE каждый раз одинаковое
Заранее благодарю за комменты
Для отладки использование сервиса не совсем правильное решение. Вы запустили сервис, но его не остановили и запускаете снова.
Для отладки использование сервиса не совсем правильное решение. Вы запустили сервис, но его не остановили и запускаете снова.
понял. пробую остановить, почему и спрашиваю. что скорее всего сам что-то неверно делаю. попробовал, разницы нет. на остановленном сервисе то же самое, перезагрузка терминала и IDE помогает на 1 раз, то есть в первый раз также будет остановка, дальше нет. Странный момент, надо бы его понять, чтобы дальше двигаться
Как бороться с этой напастью: ставить не одну, а несколько точек останова одна под другой. И никуда тестер в таком случае не денется - остановится как миленький.
в том то и дело, что не останавливается, даже если в каждой из имеющихся строк поставить точку останова. первый раз остановится, а дальше - все. поэтому вопрос и задал, может я че не верно делаю. в VS или других IDE ни разу такой истории не встречал, поэтому озадачило такое поведение, привожу видео:
в том то и дело, что не останавливается, даже если в каждой из имеющихся строк поставить точку останова. первый раз остановится, а дальше - все. поэтому вопрос и задал, может я че не верно делаю. в VS или других IDE ни разу такой истории не встречал, поэтому озадачило такое поведение
Мне помогает такое при отладке кодов. Борюсь таким способом последние полгода.
Для отладки использование сервиса не совсем правильное решение. Вы запустили сервис, но его не остановили и запускаете снова.
Позволите еще тогда вопрос: если я 20 раз запущу один и тот же сервис верно пониманию, что будут созданы несколько параллельно работающих экземпляров (по крайней мере так работает терминал). Где-то можно почитать что обозначает "сервис" с точки зрения объекта, запускается ли он в отдельном потоке, могут ли быть конфликты между сервисами с одинаковыми названиями, как получить текущую коллекцию запущенных сервисов и т.д. Не сильно пока почитал справка по MQL, но при "беглом" осмотре не обнаружил таких ответов. Если есть какие-то ссылочки буду признателен, чтобы понимать как в общем работают "программы" в МТ, как запускаются, есть ли взаимодействие между запущенными экземплярами и т.д.
понял. пробую остановить, почему и спрашиваю. что скорее всего сам что-то неверно делаю. попробовал, разницы нет. на остановленном сервисе то же самое, перезагрузка терминала и IDE помогает на 1 раз, то есть в первый раз также будет остановка, дальше нет. Странный момент, надо бы его понять, чтобы дальше двигаться
Сервис останавливается так
Позволите еще тогда вопрос: если я 20 раз запущу один и тот же сервис верно пониманию, что будут созданы несколько параллельно работающих экземпляров (по крайней мере так работает терминал). Где-то можно почитать что обозначает "сервис" с точки зрения объекта, запускается ли он в отдельном потоке, могут ли быть конфликты между сервисами с одинаковыми названиями, как получить текущую коллекцию запущенных сервисов и т.д. Не сильно пока почитал справка по MQL, но при "беглом" осмотре не обнаружил таких ответов. Если есть какие-то ссылочки буду признателен, чтобы понимать как в общем работают "программы" в МТ, как запускаются, есть ли взаимодействие между запущенными экземплярами и т.д.
Всё это осваивается методом научно-технического тыка.
Как я понял, сервис — разновидность программы на MQL5. Прикреплённый сервис к графику, запускается вместе с запуском терминала и выполняется непрерывно.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем добре
Продолжаю изучать доку и наткнулся на странное поведение дебаггера в части работы с точкой останова, в чем суть: первый запуск код как и положено останавливается на точке останова, все последующие запуски точка остановка "не отрабатывает", при этом в терминале открывается несколько сеансов отладки и больше ничего ничего не происходит. Попробовал несколько раз, поведение всегда одинаковое. Подскажите, то ли я не то жму, то ли "лыжи не едут".
Снял видео с экрана на всякий случай, чтобы было более понятно что к чему происходит:
Прошу подсказать почему:
-- редактор на второй и последующих запусках отладки уже не останавливается на точке
-- почему "сеанс" отладки не прекращается после нажатия в редакторе "Завершение отладки", а так и продолжает висеть в терминале
-- почему даже если в терминале вручную удалить все "сеансы" отладки, то все равно не произойдет остановки в точке останова
Проверял несколько раз, поведение IDE каждый раз одинаковое
Заранее благодарю за комменты