Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
Внизразмер стека Найти похожие ветки
← →
ghg © (2004-08-06 19:22) [0]имеем некую расчетную процедуру в которой при задании большого числа элементов не хватает размера стэка
вопрос: какой максимальный размер стэка можно задать для приложения, и какие есть способы уменьшения пользования стэка
ps: переписать расчетную процедуру не предлагать (не я писал) :)
← →
Anatoly Podgoretsky © (2004-08-06 19:27) [1]В настройках среди
Ну раз переписывать нельзя, то не о чем и говорить.
← →
ghg © (2004-08-06 19:31) [2]максимальный размер какой?
← →
begin...end © (2004-08-06 19:36) [3]Откуда ж кто знает, какие у тебя настройки?
Project -> Options -> Linker -> Memory Sizes
← →
ghg © (2004-08-06 19:40) [4]>begin...end © (06.08.04 19:36) [3]
блин объясню подробнее
В этом вот поле memory side->Max stack size у меня задано
$01000000
больше не делается, это не делается больше в принципе или я еще что то не сделал для увеличения ?
← →
begin...end © (2004-08-06 19:44) [5]Вот здесь 3-й пункт почитай:
http://delphiworld.narod.ru/base/compiler_directives.html
← →
ghg © (2004-08-06 19:54) [6]отлично
по ссылке написано что максимально возможный размер стэка $7fffffff
у меня же больше чем $01000000 не делается
в чем может быть причина?
← →
Юрий Зотов © (2004-08-06 19:59) [7]> ghg © (06.08.04 19:22)
> какие есть способы уменьшения пользования стэка
1. Избегать рекурсивных алгоритмов.
2. Избегать длинных цепочек вызова процедур и функций. Например, короткие процедуры можно заменить их же кодом "по месту". Хотя это и не лучший стиль, но если уж ничего другого не остается, то деваться некуда.
3. Как можно меньще локальных переменных в процедурах и функциях и как можно меньший размер этих переменных. Например, можно использовать глобальные переменные, хотя это тоже не лучший стиль.
4. Как можно меньше параметров в процедурах и функциях (желательно - не более 3-х: первые 3 параметра по умолчанию передаются не через стек, а через регистры) и как можно меньший размер этих переменных (желательно - не более 4-х байт: например, вместо передачи больших данных можно передавать их адреса).
← →
ghg © (2004-08-06 20:01) [8]>Юрий Зотов © (06.08.04 19:59) [7]
спасибо
половину не знал
← →
TUser © (2004-08-06 21:02) [9]Есь какая-то директива компилятора, уоторая устанавливает максимальный размер стека. Хотя надо очень постараться, чтобы придумать задачу, для которой действительно надо использовать эту директиву.
← →
ghg © (2004-08-06 21:15) [10]обратная трехмерная для геофизики
правда имно память раньше кончится
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c