Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Когда случается stack overflow? (http://www.flasher.ru/forum/showthread.php?t=153858)

dimarik 10.04.2011 21:03

Цитата:

Сообщение от wvxvw (Сообщение 988075)
Ну так собственно, тут рекурсия налицо. И я почему-то помню, что было ограничение в 255 витков, и тут вдруг функция вызывается рекурсивно несколько тысяч раз?

Что-то мне подсказывает, если заменить return на вызов, то это станет рекурсией в понятиях FP. И начнет срабатывать правило max-recursion-depth. В Flash IDE компиляторе оно по умолчанию равно 255, в Flex - 1000. Во флексе можно его поменять опцией default-script-limits

wvxvw 10.04.2011 22:31

Заменил return на вызов, вообще по-всякому менял - никакого эффекта -default-script-limits не возымел, вообще, даже близко. Я же писал, что задавал разные значения - он вообще никак не реагирует. Проверял заголовки флешки, заголовки компилируются нормально, т.е. информация записывается как и должно по формату.

ЗЫ. Вообще имея в своем распоряжении всего одну функцию тяжело ее не-рекурсивно вызвать более одного раза :)

dimarik 10.04.2011 22:50

Теперь я заинтересовался. Пошел делать тесты.

Добавлено через 46 минут
Предположу, что глубина стека стала динамической и все эти установки стали атавизмом.


Часовой пояс GMT +4, время: 12:07.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.