Скачать MetaTrader 5

Размер стека

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай, как растет твой рейтинг
Nikolay Demko
12465
Nikolay Demko 2010.09.10 02:09 

Что за свойство #property stacksize ?

что оно задаёт?

в каких единицах?

какой максимальный размер?

как отследить сколько нужно?

Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
  • www.mql5.com
Основы языка / Препроцессор / Свойства программ (#property) - Документация по MQL5
Alexey Da
Модератор
6612
Alexey Da 2010.09.10 09:58  
Urain:

Что за свойство #property stacksize ?

что оно задаёт?

в каких единицах?

какой максимальный размер?

как отследить сколько нужно?

А справку смотрели (https://www.mql5.com/ru/docs/basis/preprosessor/compilation)?
Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
  • www.mql5.com
Основы языка / Препроцессор / Свойства программ (#property) - Документация по MQL5
Nikolay Demko
12465
Nikolay Demko 2010.09.10 12:35  
Urain:

Что за свойство #property stacksize ?


alexvd:

А справку смотрели (https://www.mql5.com/ru/docs/basis/preprosessor/compilation)?

Читал и не найдя информацию исчерпывающей решил создать тему для тех кто пойдёт после (нужно же базу вопросов создавать).

Использую рекурсию и МТ ругается на "Stack overflow in", как выходить из ситуации что нужно чтоб хватало ?

что оно задаёт? -->

stacksize

int

размер стека для рекурсивных вызовов


в каких единицах?

какой максимальный размер?

как отследить сколько нужно?



Slawa
Модератор
6843
Slawa 2010.09.10 12:54  

Размер стека указывается в байтах.

На данный момент управление стеком в EX5-программах отключено. После некоторых исследований мы обратно включим управление стеком и дополним справку.

Отслеживать сколько нужно - только органолептически. А вообще, следует ограничивать рекурсию программно. 

Nikolay Demko
12465
Nikolay Demko 2010.09.10 13:50  
stringo:

Размер стека указывается в байтах.

На данный момент управление стеком в EX5-программах отключено. После некоторых исследований мы обратно включим управление стеком и дополним справку.

Отслеживать сколько нужно - только органолептически. А вообще, следует ограничивать рекурсию программно. 

Тоже пришёл к такому выводу, но чтоб ограничивать программно нужно как минимум функции возврата состояния стека,

заполненность, возможное переполнение на следующем шаге. Этого пока нет.

Slawa
Модератор
6843
Slawa 2010.09.10 14:46  

Не совсем. ограничивать программно - это экспериментальным путём выяснить максимальное количество рекурсивных вызовов, которое не приводит к переполнению стека. И затем в программе прописать проверку на это количество.

Nikolay Demko
12465
Nikolay Demko 2010.09.10 15:18  
stringo:

Не совсем. ограничивать программно - это экспериментальным путём выяснить максимальное количество рекурсивных вызовов, которое не приводит к переполнению стека. И затем в программе прописать проверку на это количество.

Ну вот, опять всё лаптём мерять прийдётся :о)
Slawa
Модератор
6843
Slawa 2010.09.10 15:23  
Urain:
Ну вот, опять всё лаптём мерять прийдётся :о)
Интересно посмотреть, как Вы управляете рекурсией в других средах программирования.
Nikolay Demko
12465
Nikolay Demko 2010.09.10 16:05  
stringo:
Интересно посмотреть, как Вы управляете рекурсией в других средах программирования.

А никак, в других средах не программирую принципиально.

Всё что нужно для трейдинга есть в MQL.

Совершенствоватся в других языках только распылять личные ресурсы.

Было время когда занимался всем сразу, потом понял что нет смысла. Тем более что по скорости MQL выходит на уровень С++.

Anatoli Kazharski
56961
Anatoli Kazharski 2012.02.09 05:21  

У меня такая проблемка возникла. Перезагрузил терминал и неожиданно эксперт начал ругаться выгружаясь при этом. Кричит: stack overflow. Полез в поиск, нашёл только эту тему по этому вопросу. Подскажите, что нужно делать.

Anatoli Kazharski
56961
Anatoli Kazharski 2012.02.09 05:53  
tol64:

У меня такая проблемка возникла. Перезагрузил терминал и неожиданно эксперт начал ругаться выгружаясь при этом. Кричит: stack overflow. Полез в поиск, нашёл только эту тему по этому вопросу. Подскажите, что нужно делать.

Перезагрузил компьютер и проблема исчезла. Вопрос снят пока.  :)
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий