Скачать MetaTrader 5

terminated by timeout?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Anatoliy Ivanov
6657
Anatoliy Ivanov  

После подключения эксперта сообщается:... terminated by timeout.Что это обозначает?

Alexandr Matrosov
179
Alexandr Matrosov  

Прервано (прекращено) по таймауту. Т.е. Терминал прерывает работу эксперта т.к. тот не отвечает на запросы терминала долгое время. Т.е. Эксперт зацикленный - у меня такой же и не один.

В теле эксперта надо найти бесконечный цикл типа:

 while(true) {/*Тело цикла*/}

или цикл, который прерывается по условию, которое не срабатывает и поставить в начале этого цикла строку типа:

if (IsStopped()==true) { break; }

Вообще надо разобраться какой конкретно эксперт\скрипт\индикатор вызывает такое прерывание т.к. у вас может УЖЕ работать на графике другая (зацикленная) программа и это именно она прерывается, а не тот Эксперт, которого вы кидаете на график.

P.S. Чтоб у вас все было и вам за это ничего не было.

Anatoliy Ivanov
6657
Anatoliy Ivanov  
AlexTrader0618:

Прервано (прекращено) по таймауту. Т.е. Терминал прерывает работу эксперта т.к. тот не отвечает на запросы терминала долгое время. Т.е. Эксперт зацикленный - у меня такой же и не один.

В теле эксперта надо найти бесконечный цикл типа:

или цикл, который прерывается по условию, которое не срабатывает и поставить в начале этого цикла строку типа:

Вообще надо разобраться какой конкретно эксперт\скрипт\индикатор вызывает такое прерывание т.к. у вас может УЖЕ работать на графике другая (зацикленная) программа и это именно она прерывается, а не тот Эксперт, которого вы кидаете на график.

P.S. Чтоб у вас все было и вам за это ничего не было.


Спасибо за разъяснение, так как в документации не нашел описание сообщений терминала.Интересно, что один и тотже советник, с одинаковыми параметирами запущен на нескольких (20) терминалах одного и того же брокера, а выше указанное сообщение выдается в 3 случаях.На остальных терминалах советники нормально работают. При этом других советников и скриптов нет. В советникаx имеется цикл for(int x=1;x<=175;x++)
Dmitry Pestov
141
Dmitry Pestov  

Подобная ситуация на windows server 2003. Эксперт писался на windows xp - все хорошо работает, стабильно. Поставил работать на windows server 2003 никак не хочет, выдает сообщение terminated by timeout. Почитал на форумах: говорят причина в зацикленности.

Хоть на ХР все работает и нет зацикленности - пробую на сервере по новому создавать советника. Код компилирую кусками(усложняю по шагам, чтобы найти ошибчный момент). Сбоит: пустая страница всего лишь файловая операция - чтение из файла и вот terminated by timeout. На следующий день: файловые операции работают нормально, циклом из пяти иттераций считываю данные из файла - terminated by timeout. На третий день: файловые опереции - нормально, цикл - нормално данные циклом читаю в масив и опять terminated by timeout.

В общем то я программист очень начального уровня - думаю если в массив перегружаю неправильно, создам пять разных файлов по одной переменной в каждом - следующая же операция записи в файл измененной переменной выдает terminated by timeout.

Тот же терминал, тот же брокер, тот же эксперт, но на windows xp работает, а на windows server 2003 никак. Причем при подключении кода из 10 строк процессор работает на 100% и после закрытия окна терминала процесс остается, необходимо убивать из диспетчера задач. Галимотня какая то, может подскажете, что происходит и как с этим бороться.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий