acerca de lo errores que manda el stack
-
- Posts: 52
- Joined: Fri Oct 28, 2005 3:42 pm
- Location: Mexico, D.F.
acerca de lo errores que manda el stack
existe algun lugar en donde venga una explicacion de los errores que manda el stack, por ejemplo
(b)WNDMAIN (0) Unrecoverable error 650: Processor stack fault
este error me lo envia cuando agrego una funcion, mas sin embargo la quito del programa y no manda dicho error.
de antemano muchas gracias.
(b)WNDMAIN (0) Unrecoverable error 650: Processor stack fault
este error me lo envia cuando agrego una funcion, mas sin embargo la quito del programa y no manda dicho error.
de antemano muchas gracias.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
-
- Posts: 52
- Joined: Fri Oct 28, 2005 3:42 pm
- Location: Mexico, D.F.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
-
- Posts: 52
- Joined: Fri Oct 28, 2005 3:42 pm
- Location: Mexico, D.F.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
En la documentación de FiveWin está explicada la distribución de la memoria en los 64Ks que usa Clipper:
<------------------------------------------- 64 Ks ---------------------------------------------->
DATA,_BSS (SYMP) | STACK_C | HEAP_C | CLIPPER STACK | CLIPPER STATICS
<----------------- initial DG size --------------->
En el fichero LNK especificas el valor de STACK_C y de HEAP_C. Cuanto más crezcan menos tamaño le quedará a Clipper para el stack (la pila) de su máquina virtual.
Cuantas más variables estáticas uses, mas tamaño le quitas al stack de la maquina virtual de Clipper.
Si el valor de STACK_C disminuye, no podrás ejecutar muchas llamadas a funciones desde otras funciones: a() llama a b() que llama a c() que llama a d(), etc.
Los GETs de Windows consumen HEAP_C, luego si usas muchos GETs simultaneamente, necesitas aumentar HEAP_C
Como ves, se trata de encontrar un equilibrio entre todos esos valores.
Al pasar tu aplicación a 32 bits usando FWH y Harbour/xHarbour desaparece todo este problema
<------------------------------------------- 64 Ks ---------------------------------------------->
DATA,_BSS (SYMP) | STACK_C | HEAP_C | CLIPPER STACK | CLIPPER STATICS
<----------------- initial DG size --------------->
En el fichero LNK especificas el valor de STACK_C y de HEAP_C. Cuanto más crezcan menos tamaño le quedará a Clipper para el stack (la pila) de su máquina virtual.
Cuantas más variables estáticas uses, mas tamaño le quitas al stack de la maquina virtual de Clipper.
Si el valor de STACK_C disminuye, no podrás ejecutar muchas llamadas a funciones desde otras funciones: a() llama a b() que llama a c() que llama a d(), etc.
Los GETs de Windows consumen HEAP_C, luego si usas muchos GETs simultaneamente, necesitas aumentar HEAP_C
Como ves, se trata de encontrar un equilibrio entre todos esos valores.
Al pasar tu aplicación a 32 bits usando FWH y Harbour/xHarbour desaparece todo este problema
Last edited by Antonio Linares on Tue Aug 07, 2007 11:32 pm, edited 3 times in total.
-
- Posts: 52
- Joined: Fri Oct 28, 2005 3:42 pm
- Location: Mexico, D.F.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
-
- Posts: 52
- Joined: Fri Oct 28, 2005 3:42 pm
- Location: Mexico, D.F.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact: