|
|
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
Ну, примерно, в общем случае. Допустим VC сколько дает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 15:08 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
AkhДопустим VC сколько дает? MSDN /F (Set Stack Size) ... Without this option the stack size defaults to 1 MB ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 15:24 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
он ещё расти умеет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 15:46 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
Ох...еть! Ладно, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 16:04 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
AkhНу, примерно, в общем случае. Допустим VC сколько дает? т.к. стэк используется а) для передачи параметров при вызове функций б) для выделения объектов на стеке (в теле функций, то что без new в общем случае) в) для некоторых задач оси (разные оси по разному могут юзать) г) для временного хранения переменных внутри функций например... то подсчитав всё это Вы сможете более-менее точно ответить на поставленный вопрос. Вот например для программ на азме, под at89c51rc1 мне хватает байт 20-30... :) под форточками, с помощью механизации железа и оси - при нехватке стека происходит прерывание, по которому переаллокируется данная область. посему острота данного вопроса в стандартной библиотеке от милкософта снята. удачи Вам (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 16:12 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
kolobok0 AkhНу, примерно, в общем случае. Допустим VC сколько дает? т.к. стэк используется а) для передачи параметров при вызове функций б) для выделения объектов на стеке (в теле функций, то что без new в общем случае) в) для некоторых задач оси (разные оси по разному могут юзать) г) для временного хранения переменных внутри функций например... то подсчитав всё это Вы сможете более-менее точно ответить на поставленный вопрос. Вот например для программ на азме, под at89c51rc1 мне хватает байт 20-30... :) под форточками, с помощью механизации железа и оси - при нехватке стека происходит прерывание, по которому переаллокируется данная область. посему острота данного вопроса в стандартной библиотеке от милкософта снята. удачи Вам (круглый) Дело не в том, что я сижу в асме или сильно изврощаюсь с каким-то компилятором. Дело в том, что есть такая функция clone() в линуксах, которая клонирует процесс. Так вот ей надо стек передать. Вот, я думаю, сикока ей давать. Давать буду по параметру, в зависимости от сложности функции, но надо уметь как-то определять размер, а то нафиг на 3-4 порядка ошибаться. Да и подефолту надо что-то поставить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 16:35 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
Akh...Давать буду по параметру, в зависимости от сложности функции, но надо уметь как-то определять размер, а то нафиг на 3-4 порядка ошибаться. Да и подефолту надо что-то поставить. ну енто мона... никто Вам не мешает прописать признак "чистоты" у всего стэка. ну и контролировать после выполнения того или иного функционала... подводные камни - это то, что "статчиные цифры иногда меняются(С)".. т.е. подправили алгоритм - извольте померять... дюже навороченный алгоритм - извольте прибавить про запас...и т.д.. и т.п... Хотя вот такая мысля пришла, пока чиркал - а разве в сях не было ничаво про отработку исключений по нехватке стэка ? что то вроде было? или склероз у мня? (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 16:40 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
kolobok0Хотя вот такая мысля пришла, пока чиркал - а разве в сях не было ничаво про отработку исключений по нехватке стэка ? что то вроде было? или склероз у мня? (круглый) int _resetstkoflw ( void ); MSDN __try { recursive(recure); } __except(GetExceptionCode() == STATUS_STACK_OVERFLOW) { if (ac >= 2) { puts("resetting stack overflow"); result = _resetstkoflw(); } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 17:33 |
|
||
|
скока надо стека программулине?
|
|||
|---|---|---|---|
|
#18+
kolobok0 Akh...Давать буду по параметру, в зависимости от сложности функции, но надо уметь как-то определять размер, а то нафиг на 3-4 порядка ошибаться. Да и подефолту надо что-то поставить. ну енто мона... никто Вам не мешает прописать признак "чистоты" у всего стэка. ну и контролировать после выполнения того или иного функционала... подводные камни - это то, что "статчиные цифры иногда меняются(С)".. т.е. подправили алгоритм - извольте померять... дюже навороченный алгоритм - извольте прибавить про запас...и т.д.. и т.п... Хотя вот такая мысля пришла, пока чиркал - а разве в сях не было ничаво про отработку исключений по нехватке стэка ? что то вроде было? или склероз у мня? (круглый) 1. Да, об этом я и не подумал. :) 2. При исключении, realloc-нуть стек? А функцию потока по новой запускать? Не хорошо это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2006, 18:13 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33940915&tid=2030634]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
145ms |
get topic data: |
9ms |
get forum data: |
5ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 211ms |
| total: | 444ms |

| 0 / 0 |
