A stack unwinding mechanism and method for same is presented. The stack
unwinding mechanism reduces stack overflow problems by determining if an
asynchronous function completed synchronously and unwinding the stack if
the function did complete synchronously. The stack unwinding mechanism
then completes the client's processing of the asynchronous function's task
after the stack has been unwound. This allows client processing to take
place when there is little chance of stack overflow or overgrowth. If the
asynchronous function will complete asynchronously, the stack unwinding
mechanism allows processing to continue normally because there is little
chance for stack overflow in this situation. The various embodiments of
the present invention disclosed herein are especially well-suited to
embedded processor environments.
Un meccanismo e un metodo svolgersi della pila per stessi è presentato. Il meccanismo svolgersi della pila riduce i problemi di trabocco di pila determinando se una funzione asincrona completata contemporaneamente e svolgendo la pila se la funzione completasse contemporaneamente. Il meccanismo svolgersi della pila allora realizza l'elaborazione del cliente dell'operazione della funzione asincrona dopo che la pila sia stata svolta. Ciò permette il cliente che procede per avvenire quando ci è poca probabilità di trabocco di pila o della crescita eccessiva. Se la funzione asincrona completerà asynchronously, il meccanismo svolgersi della pila concede procedere per continuare normalmente perché ci è poca probabilità per trabocco di pila in questa situazione. I vari metodi di realizzazione di presente invenzione rilevata qui sono particolarmente ben adattati agli ambienti inclusi del processor.