From 68fc8e96a9629e73469ed457abd955e548ec670c Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:49:58 +0100 Subject: unslug pt-br: move --- files/pt-br/glossary/call_stack/index.html | 88 ++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 files/pt-br/glossary/call_stack/index.html (limited to 'files/pt-br/glossary/call_stack') diff --git a/files/pt-br/glossary/call_stack/index.html b/files/pt-br/glossary/call_stack/index.html new file mode 100644 index 0000000000..73e99316be --- /dev/null +++ b/files/pt-br/glossary/call_stack/index.html @@ -0,0 +1,88 @@ +--- +title: Call stack (Pilha de chamadas) +slug: Glossario/Call_stack +translation_of: Glossary/Call_stack +--- +

A pilha de chamadas (call stack) é um mecanismo do interpretador de uma linguagem que organiza o funcionamento do script quando são chamadas muitas funções, qual função está sendo executada no momento, e quais serão chamadas dentro de alguma função, etc.

+ + + +

Exemplo

+ +
function saudacao() {
+   // [1] Algum código aqui
+   digaOi();
+   // [2] Algum código aqui
+}
+function digaOi() {
+   return "Olá!";
+}
+
+// Chamando a função `saudacao`
+saudacao();
+
+// [3] Algum código aqui
+
+ +

O código acima será executado desta forma pelo interpretador:

+ +
    +
  1. Todas as funções serão ignoradas, até chegar na chamada da função saudacao().
  2. +
  3. Adiciona a função saudacao() para a pilha de chamadas. +
    +

    Pilha de chamadas:
    + - saudacao

    +
    +
  4. +
  5. Executa todas as linhas de código da função saudacao().
  6. +
  7. Chama a função digaOi().
  8. +
  9. Adiciona a função digaOi() na pilha de chamadas. +
    +

    Pilha de chamadas:
    + - saudacao
    + - digaOi

    +
    +
  10. +
  11. Executa todas as linhas de código da função digaOi() até o final.
  12. +
  13. Retorna a execução na linha onde foi chamada a função digaOi() e continua a execução do resto da função saudacao().
  14. +
  15. Deleta a função digaOi() da pilha de chamadas. +
    +

    Pilha de chamadas:
    + - saudacao

    +
    +
  16. +
  17. Quando todas as linhas da função saudacao() forem executadas, retorna para a linha onde a função foi invocada, e continua a execução do resto do código.
  18. +
  19. Deleta a função saudacao() da Pilha de chamadas. +
    +

    Pilha de chamadas:
    + EMPTY

    +
    +
  20. +
+ +

Começamos com uma pilha de chamadas vazia, e sempre que chamamos uma função, ela é automaticamente adicionada à pilha de chamadas, e depois de todas as linhas serem executadas, é automaticamente removida da pilha de chamadas. No final, a pilha está vazia novamente.

+ +

Veja mais

+ +

General knowledge

+ + + + -- cgit v1.2.3-54-g00ecf