MetaTrader 4 Client Terminal build 509 - страница 42

 
Наколотил формулу магда в длл-ке. Длл-ку подключил, вызов штатного магда отключил. Все работает и память никуда не течет.
 

Нашел очередной глюк в тестере (build 509).

Четверг опрдеделяется DayOfWeek() как "3".

Что-то тестировать сейчас вообще невозможно...

MetaQuotes! Верните на LiveUpdate последнюю рабочую версию! А 509 забирайте в доработку. Очень мнгого проблем вылазит и в тестере и на реале.

Все таки деньгами работаем.

 
Bobs:

Нашел очередной глюк в тестере (build 509).

Четверг опрдеделяется DayOfWeek() как "3".

Что-то тестировать сейчас вообще невозможно...

MetaQuotes! Верните на LiveUpdate последнюю рабочую версию! А 509 забирайте в доработку. Очень мнгого проблем вылазит и в тестере и на реале.

Все таки деньгами работаем.

Гыгы.

int DayOfWeek()
Возвращает порядковый номер дня недели (воскресенье-0,1,2,3,4,5,6) последнего известного времени сервера.
Замечание: при тестировании последнее известное время сервера моделируется.
Пример:
  // не работает в выходные дни.
  if(DayOfWeek()==0 || DayOfWeek()==6) return(0);
 
Alexey_74:
Наколотил формулу магда в длл-ке. Длл-ку подключил, вызов штатного магда отключил. Все работает и память никуда не течет.

В dll-ке вы после расчета каждого макда память, небось, освобождаете.

А в МТ вызванные индикаторы кэшируются, чтоб быстро рассчитываться при повторных запросах.

Хотя, не исключена и утечка. С другими индикаторами воспроизводится? Код в сервис-деск отправили?

 
komposter:

В dll-ке вы после расчета каждого макда память, небось, освобождаете.

А в МТ вызванные индикаторы кэшируются, чтоб быстро рассчитываться при повторных запросах.

Хотя, не исключена и утечка. С другими индикаторами воспроизводится? Код в сервис-деск отправили?


1. Ну да, стараюсь не забывать использовать в длл-ках операторы по освобождению памяти

2. Не знал, что кэшируются. Тогда, похоже, новое кэширование происходит без убийства старого. В результате плодятся копии индикатора в памяти, вот она и течет. Так оно или не так на самом деле, но выглядит именно так.

3. Что такое "сервис-деск"? Подскажите, где найти. На счет других индикаторов - в алгоритме кроме магда присутствуют только машки. Машки утечки памяти не вызывают. Другие индюки не проверял - это ж большая отдельная работа, такая проверка.

 
komposter:

Гыгы.

int DayOfWeek()
Возвращает порядковый номер дня недели (воскресенье-0,1,2,3,4,5,6) последнего известного времени сервера.
Замечание: при тестировании последнее известное время сервера моделируется.
Пример:

Чё-то не въехал в гы-гы...

0 - Вс

1 - Пн

2- Вт

3 - Ср

4 - Чт

5- Пт

6 - Сб

У него, цитирую: Четверг опрдеделяется DayOfWeek() как "3".

 
используйте TimeDayOfWeek( TimeCurrent() ) и всегда все будет правильно.
 
Здесь зашел разговор о расходуемой памяти, хотел узнать о таком случае - перед старт()-ом создаем новый массив фиксированного размера, а в старт()-е заполняем ячейки массива. На каком этапе МТ4 реально начинает потреблять память под этот массив - в момент создания или при заполнении?
 
создания
 
FAQ:
создания

Понятно. А если после создания того же массива фиксированного размера впоследствии уменьшить размер массива - память занятая удаленными элементами гарантированно высвобождается? Я спрашиваю, т.к. читал в какой-то ветке что частое применение ArrayResize влияет на быстродействие, хотелось бы определить для себя как лучше найти компромисс между расходуемой памятью и быстродействием в некоторых ситуациях.
Причина обращения: