Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка Stack Overflow [D6, Win95/98]


Андрей Дмитриев ©   (2002-09-12 12:57:00) 

Уважаемые мастера!
При загрузке пр-мы на одной из машин возникает Ошибка Stack Overflow
в чем может быть дело, причем на других машинах все работает хорошо,
из использованных компонентов есть массив из 5 - ти TClientSocketов.
Может не хватает памяти или др.


ToRMoZzz   (2002-09-13 22:31:00) [1]

Ищу рекурсию. дорого! =))))))
вот убейте меня, но я не понимаю, как люди пишут прогаммы не зная что такое рекурсия (про предикаты, wp и индуктивные функции я вообще молчу)


Андрей Дмитриев   (2002-09-13 10:49:00) [2]

Спасибо огромное всем, все понял буду искать рекурсию
буду постепенно за{} строчки и попробую найти


Kaban   (2002-09-13 10:28:00) [3]

Ты вообще не можешь не сразу понять, что это рекурсия, например,
изменение содержимого TEdit в обработчике OnChange вызовет рекурсию. Хотя явного вызова рекурсивной функции ты в коде не найдешь.


Anatoly Podgoretsky   (2002-09-13 10:18:00) [4]

Андрей Дмитриев (13.09.02 10:13)
Неконтролируемая рекурсия в твоем приложении есть, о чем и говорит ошибка, просто ты не знаешь где


MBo   (2002-09-13 10:15:00) [5]

Рекурсия может быть косвенной - A вызывает Б, Б вызывает С, С вызывает А


Андрей Дмитриев   (2002-09-13 10:13:00) [6]

Ну тогда рекурсии в моем приложении нет, тогда в чем еще может быть дело


ЮЮ   (2002-09-13 09:46:00) [7]

>для не просвященных что такое рекурсия
Если в каком-то обработчике сделать некие действия, которые приводят к вызову этого же обработчика - получим то, что получили.

>к тому же на многих компах она работает хорошо
Этот обработчик не вызывается.


MBo   (2002-09-13 09:32:00) [8]

>для не просвященных что такое рекурсия
Простейший случай рекурсии - когда из процедуры или функции вызывается она же

Function Factorial(n:Integer):Integer;
begin
if n=1 then
Result:=1
else
Result:=n*Factorial(n-1);
end;


Андрей Дмитриев   (2002-09-13 09:27:00) [9]

А для не просвященных что такое рекурсия
Пробывал увеличить размер мах стека не помогает,
может дело в создании массива компонентов в runtime
к тому же на многих компах она работает хорошо


Андрей Дмитриев   (2002-09-13 09:24:00) [10]

А для не просвященных что такое рекурсия


Леха_   (2002-09-12 14:25:00) [11]

обычно из-за неконролируемой рекурсии


Opuhshii   (2002-09-12 14:22:00) [12]

в рекурсии дело,..


Андрей Дмитриев   (2002-09-12 13:09:00) [13]

Спасибо попробую, а просто ради интереса в чем дело


Alx2   (2002-09-12 13:06:00) [14]

Если в проекте все тип-топ, то:
Project->Options->Linker->Max stacksize


Наверх

Титульная страница Поиск, карта сайта Написать письмо